Module Header Template (RickJ)
Jump to navigation
Jump to search
RickJ's module header template:
//=================================================================== // *** AGS MODULE HEADER *** // // Module: <module name> // // Author: <first name> <last name> (<forum name>) // // Copyright (C) yyyy <holder> //------------------------------------------------------------------- //=================================================================== // Dependancies: // The following constant definitions allow the compiler to check for // module dependencies and to issue appropiate error messages when a // required module is not installed. There should be a definition for // the current version and all previous compatiable versions. //------------------------------------------------------------------- // Define this module's version info #define ModuleName_VERSION 0100 #define ModuleName_VERSION_0100 // Check for correct AGS version #ifdef AGS_SUPPORTS_IFVER #ifnver 2.72 #error Module ModuleName requires AGS V2.72 or above #endif #endif // Check for required module/version #ifndef RequiredModuleName_VERSION_0200 #error Module ModuleName requires RequiredModuleName V2.00 or above #endif //=================================================================== // Configuration: // The following constant definitions are used to modify the behavior // of this module. //------------------------------------------------------------------- #define ModuleName_CONFIGPARAM 10 //=================================================================== // Return Values: // The following constant definitions represent possible return value // of functions contained in this module. //------------------------------------------------------------------- #define ModuleName_RETURNVAL 100 //=================================================================== // Enumerated Types: // The following enumerated data types are defined by this module. //------------------------------------------------------------------- enum ModuleName_Type { eModuleName_Value1, eModuleName_Value2 }; //=================================================================== struct ModuleName { // // The following structure contains the definition of a menu item. //------------------------------------------------------------------- // Public Data int VariableName; // Public Static Methods import static function FunctionName(); // Public Methods import function FunctionName(); // Private Data protected int variable_name; // Private Methods protected import function function_name(); };