public override bool Register() { if (!base.Register()) { return(false); } if (HostController == null) { return(false); } RegisterEnumSymbols(); DataType2 dt2 = new DataType2(); string s = "EachSourceClass"; Transform.For("EachLogMethod"); string format = EachLogMethod_Format != null ? EachSourceClass.EachLogMethod_Format : "{0}"; if (HostController.RegisterEvent(s + ".EachLogMethod", format, ref EachLogMethod_Handle)) { DebugStub.WriteLine("register event succeeded"); Transform.For("eachParam"); HostController.RegisterEventField(EachSourceClass.EachLogMethod_Handle, "eachParam", 0, dt2.__EachParam); Transform.EndFor(); // // HACK!!!!! Some instruction is needed here, otherwise, the transform // will merge the enumeration below with the one above // producing a mismatch in the order of argumets in the structure declaration // DebugStub.WriteLine("Registering enums"); Transform.For("eachBasicEnumParam"); HostController.RegisterEventGenericField(EachSourceClass.EachLogMethod_Handle, "eachBasicEnumParam", 0, sizeof(int), BasicEnum_Handle); Transform.EndFor(); } else { // The event might have been registered already // Check whether we foundit already in the table or not if (EachSourceClass.EachLogMethod_Handle == 0) { return(false); } } Transform.EndFor(); return(true); }