reduce boilerplate code
This commit is contained in:
@@ -24,8 +24,7 @@ struct RegisterDialogDriver
|
|||||||
RegisterDialogDriver( const istring &sName, CreateDialogDriverFn pfn );
|
RegisterDialogDriver( const istring &sName, CreateDialogDriverFn pfn );
|
||||||
};
|
};
|
||||||
#define REGISTER_DIALOG_DRIVER_CLASS( name ) \
|
#define REGISTER_DIALOG_DRIVER_CLASS( name ) \
|
||||||
static DialogDriver *Create##name() { return new DialogDriver_##name; } \
|
static RegisterDialogDriver register_##name( #name, CreateClass<DialogDriver_##name, DialogDriver> )
|
||||||
static RegisterDialogDriver register_##name( #name, Create##name )
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -75,8 +75,7 @@ struct RegisterInputHandler
|
|||||||
RegisterInputHandler( const istring &sName, CreateInputHandlerFn pfn );
|
RegisterInputHandler( const istring &sName, CreateInputHandlerFn pfn );
|
||||||
};
|
};
|
||||||
#define REGISTER_INPUT_HANDLER_CLASS2( name, x ) \
|
#define REGISTER_INPUT_HANDLER_CLASS2( name, x ) \
|
||||||
static InputHandler *Create##name() { return new InputHandler_##x; } \
|
static RegisterInputHandler register_##name( #name, CreateClass<InputHandler_##x, InputHandler> )
|
||||||
static RegisterInputHandler register_##name( #name, Create##name )
|
|
||||||
#define REGISTER_INPUT_HANDLER_CLASS( name ) REGISTER_INPUT_HANDLER_CLASS2( name, name )
|
#define REGISTER_INPUT_HANDLER_CLASS( name ) REGISTER_INPUT_HANDLER_CLASS2( name, name )
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -58,8 +58,7 @@ struct RegisterSoundDriver
|
|||||||
};
|
};
|
||||||
// Can't use Create##name because many of these have -sw suffixes.
|
// Can't use Create##name because many of these have -sw suffixes.
|
||||||
#define REGISTER_SOUND_DRIVER_CLASS2( name, x ) \
|
#define REGISTER_SOUND_DRIVER_CLASS2( name, x ) \
|
||||||
static RageSoundDriver *Create##x() { return new RageSoundDriver_##x; } \
|
static RegisterSoundDriver register_##x( #name, CreateClass<RageSoundDriver_##x, RageSoundDriver> )
|
||||||
static RegisterSoundDriver register_##x( #name, Create##x )
|
|
||||||
#define REGISTER_SOUND_DRIVER_CLASS( name ) REGISTER_SOUND_DRIVER_CLASS2( name, name )
|
#define REGISTER_SOUND_DRIVER_CLASS( name ) REGISTER_SOUND_DRIVER_CLASS2( name, name )
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user