using System; using System.Collections.Generic; //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public interface ViTupleInterface { Object Value(UInt32 idx); UInt32 Size { get; } } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTupleInterface { public Object Value(UInt32 idx) { return null; } public UInt32 Size { get { return 0; } } } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; default: return null; } } public T0 Value0 { get { return _value0; } set { _value0 = value; } } public new UInt32 Size { get { return 1; } } // public T0 _value0; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; default: return null; } } public T1 Value1 { get { return _value1; } set { _value1 = value; } } public new UInt32 Size { get { return 2; } } // public T1 _value1; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; case 2: return _value2; default: return null; } } public T2 Value2 { get { return _value2; } set { _value2 = value; } } public new UInt32 Size { get { return 3; } } // public T2 _value2; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; case 2: return _value2; case 3: return _value3; default: return null; } } public T3 Value3 { get { return _value3; } set { _value3 = value; } } public new UInt32 Size { get { return 4; } } // public T3 _value3; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; case 2: return _value2; case 3: return _value3; case 4: return _value4; default: return null; } } public T4 Value4 { get { return _value4; } set { _value4 = value; } } public new UInt32 Size { get { return 5; } } // public T4 _value4; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; case 2: return _value2; case 3: return _value3; case 4: return _value4; case 5: return _value5; default: return null; } } public T5 Value5 { get { return _value5; } set { _value5 = value; } } public new UInt32 Size { get { return 6; } } // public T5 _value5; } //+------------------------------------------------------------------------------------------------------------------------------------------------------------- public class ViTuple : ViTuple, ViTupleInterface { public new Object Value(UInt32 idx) { switch (idx) { case 0: return _value0; case 1: return _value1; case 2: return _value2; case 3: return _value3; case 4: return _value4; case 5: return _value5; case 6: return _value6; default: return null; } } public T6 Value6 { get { return _value6; } set { _value6 = value; } } public new UInt32 Size { get { return 7; } } // public T6 _value6; }