static void AddEventHook( TypeBuilder typeBuilder, Type[] methodParams, Type returnType, int eventIndex )
{
string methodName = "EventHook" + eventIndex;
MethodBuilder methodBuilder = typeBuilder.DefineMethod( methodName,
MethodAttributes.Public | MethodAttributes.Static,
returnType,
methodParams );
ILGenerator generator = methodBuilder.GetILGenerator();
generator.Emit( OpCodes.Ldc_I4, eventIndex );
generator.Emit( OpCodes.Ldarg_1 );
MethodInfo min = typeof( Logger ).GetMethod( "EventTraceNotifier" );
generator.EmitCall( OpCodes.Call, min, null );
generator.Emit( OpCodes.Ret );
}