Co-locate the two cockpit-pod projects into a single repository:
- Console/ : TeslaConsole, the net48 WinForms operator console (decompiled
reconstruction) plus its differential + catalog test suite.
- Launcher/ : TeslaLauncher, the net6 pod-side Service + Agent rewrite.
Adds a combined TeslaSuite.sln, root README documenting the shared wire
contract (and its current duplication, the main follow-up), and a root
.gitignore. Histories were not preserved per request; this is a fresh start
from the current working state of both projects.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
173 lines
1.5 KiB
C#
173 lines
1.5 KiB
C#
namespace TeslaConsole;
|
|
|
|
public static class Tuple
|
|
{
|
|
public static Tuple<T1, T2> Create<T1, T2>(T1 a, T2 b)
|
|
{
|
|
return new Tuple<T1, T2>(a, b);
|
|
}
|
|
|
|
public static Tuple<T1, T2, T3> Create<T1, T2, T3>(T1 a, T2 b, T3 c)
|
|
{
|
|
return new Tuple<T1, T2, T3>(a, b, c);
|
|
}
|
|
|
|
public static Tuple<T1, T2, T3, T4> Create<T1, T2, T3, T4>(T1 a, T2 b, T3 c, T4 d)
|
|
{
|
|
return new Tuple<T1, T2, T3, T4>(a, b, c, d);
|
|
}
|
|
}
|
|
public class Tuple<T1, T2>
|
|
{
|
|
private T1 mA;
|
|
|
|
private T2 mB;
|
|
|
|
public T1 A
|
|
{
|
|
get
|
|
{
|
|
return mA;
|
|
}
|
|
set
|
|
{
|
|
mA = value;
|
|
}
|
|
}
|
|
|
|
public T2 B
|
|
{
|
|
get
|
|
{
|
|
return mB;
|
|
}
|
|
set
|
|
{
|
|
mB = value;
|
|
}
|
|
}
|
|
|
|
public Tuple(T1 a, T2 b)
|
|
{
|
|
mA = a;
|
|
mB = b;
|
|
}
|
|
}
|
|
public class Tuple<T1, T2, T3>
|
|
{
|
|
private T1 mA;
|
|
|
|
private T2 mB;
|
|
|
|
private T3 mC;
|
|
|
|
public T1 A
|
|
{
|
|
get
|
|
{
|
|
return mA;
|
|
}
|
|
set
|
|
{
|
|
mA = value;
|
|
}
|
|
}
|
|
|
|
public T2 B
|
|
{
|
|
get
|
|
{
|
|
return mB;
|
|
}
|
|
set
|
|
{
|
|
mB = value;
|
|
}
|
|
}
|
|
|
|
public T3 C
|
|
{
|
|
get
|
|
{
|
|
return mC;
|
|
}
|
|
set
|
|
{
|
|
mC = value;
|
|
}
|
|
}
|
|
|
|
public Tuple(T1 a, T2 b, T3 c)
|
|
{
|
|
mA = a;
|
|
mB = b;
|
|
mC = c;
|
|
}
|
|
}
|
|
public class Tuple<T1, T2, T3, T4>
|
|
{
|
|
private T1 mA;
|
|
|
|
private T2 mB;
|
|
|
|
private T3 mC;
|
|
|
|
private T4 mD;
|
|
|
|
public T1 A
|
|
{
|
|
get
|
|
{
|
|
return mA;
|
|
}
|
|
set
|
|
{
|
|
mA = value;
|
|
}
|
|
}
|
|
|
|
public T2 B
|
|
{
|
|
get
|
|
{
|
|
return mB;
|
|
}
|
|
set
|
|
{
|
|
mB = value;
|
|
}
|
|
}
|
|
|
|
public T3 C
|
|
{
|
|
get
|
|
{
|
|
return mC;
|
|
}
|
|
set
|
|
{
|
|
mC = value;
|
|
}
|
|
}
|
|
|
|
public T4 D
|
|
{
|
|
get
|
|
{
|
|
return mD;
|
|
}
|
|
set
|
|
{
|
|
mD = value;
|
|
}
|
|
}
|
|
|
|
public Tuple(T1 a, T2 b, T3 c, T4 d)
|
|
{
|
|
mA = a;
|
|
mB = b;
|
|
mC = c;
|
|
mD = d;
|
|
}
|
|
}
|