using System; using System.IO; using se.lth.control.labcomm; class x : an_int.Handler, a_fixed_int_array.Handler, a_fixed_int_multi_array.Handler, a_fixed_int_array_array_array.Handler, a_variable_int_array.Handler, a_variable_int_multi_array.Handler, a_variable_int_array_array_array.Handler, an_int_struct.Handler, a_void.Handler { LabCommEncoderChannel encoder; void an_int.Handler.handle(int data) { Console.Error.WriteLine("an_int"); an_int.encode(encoder, data); } void a_fixed_int_array.Handler.handle(int[] data) { Console.Error.WriteLine("a_fixed_int_array"); a_fixed_int_array.encode(encoder, data); } void a_fixed_int_multi_array.Handler.handle(int[,,] data) { Console.Error.WriteLine("a_fixed_int_multi_array"); a_fixed_int_multi_array.encode(encoder, data); } void a_fixed_int_array_array_array.Handler.handle(int[][][] data) { Console.Error.WriteLine("a_fixed_int_array_array_array"); a_fixed_int_array_array_array.encode(encoder, data); } void a_variable_int_array.Handler.handle(int[] data) { Console.Error.WriteLine("a_variable_int_array"); a_variable_int_array.encode(encoder, data); } void a_variable_int_multi_array.Handler.handle(int[,,] data) { Console.Error.WriteLine("a_variable_int_multi_array"); a_variable_int_multi_array.encode(encoder, data); } void a_variable_int_array_array_array.Handler.handle(int[][][] data) { Console.Error.WriteLine("a_variable_int_array_array_array"); a_variable_int_array_array_array.encode(encoder, data); } void an_int_struct.Handler.handle(an_int_struct data) { Console.Error.WriteLine("an_int_struct"); an_int_struct.encode(encoder, data); } void a_void.Handler.handle() { Console.Error.WriteLine("a_void"); a_void.encode(encoder); } public x(String InName, String OutName) { FileStream InFile = new FileStream(InName, FileMode.Open, FileAccess.Read); LabCommDecoderChannel d = new LabCommDecoderChannel(InFile); FileStream OutFile = new FileStream(OutName, FileMode.OpenOrCreate, FileAccess.Write); encoder = new LabCommEncoderChannel(OutFile); an_int.register(d, this); a_fixed_int_array.register(d, this); a_fixed_int_multi_array.register(d, this); a_fixed_int_array_array_array.register(d, this); a_variable_int_array.register(d, this); a_variable_int_multi_array.register(d, this); a_variable_int_array_array_array.register(d, this); an_int_struct.register(d, this); a_void.register(d, this); an_int.register(encoder); a_fixed_int_array.register(encoder); a_fixed_int_multi_array.register(encoder); a_fixed_int_array_array_array.register(encoder); a_variable_int_array.register(encoder); a_variable_int_multi_array.register(encoder); a_variable_int_array_array_array.register(encoder); an_int_struct.register(encoder); a_void.register(encoder); try { d.run(); } catch (EndOfStreamException) { } } static void Main(String[] arg) { new x(arg[0], arg[1]); } }