CApplication update:

- Initialise params in definition (not constructor)
This commit is contained in:
2022-10-13 16:22:45 +02:00
parent 7dfdfdb4ce
commit a5d3f469cb
2 changed files with 22 additions and 32 deletions

View File

@@ -27,10 +27,6 @@ CApplication::CApplication( EDebugLevel pLogLevel )
// Set signal handlers // Set signal handlers
ConfigureSignalHandlers(); ConfigureSignalHandlers();
DefinitionFile = NULL;
ConfigFile = NULL;
AddressFile = NULL;
// Create output logger // Create output logger
Log = new CLogCore( stdout, 5000 ); Log = new CLogCore( stdout, 5000 );
LogLevel = pLogLevel; LogLevel = pLogLevel;
@@ -43,13 +39,6 @@ CApplication::CApplication( EDebugLevel pLogLevel )
AddressList = DataTree->GetChild( "AddressList", true ); AddressList = DataTree->GetChild( "AddressList", true );
JSONparser = new CJSONparse( DataTree ); JSONparser = new CJSONparse( DataTree );
// Selector
Selector = NULL;
// List
FirstFunctionType = NULL;
FirstFunction = NULL;
// Add Core Function Types // Add Core Function Types
//AddFunctionType( TYPE_FUNCTION, NewFunctionCore ); // <-- Can't add virtual function //AddFunctionType( TYPE_FUNCTION, NewFunctionCore ); // <-- Can't add virtual function
AddFunctionType( TYPE_SELECTABLE, NewSelectableCore ); AddFunctionType( TYPE_SELECTABLE, NewSelectableCore );

View File

@@ -33,15 +33,15 @@ class Application;
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
struct SFunctionType { struct SFunctionType {
char * Name; char * Name = NULL;
FFuncConstructor Constructor; FFuncConstructor Constructor = NULL;
TFunctionType * Next; TFunctionType * Next = NULL;
}; };
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
struct SFunctionItem { struct SFunctionItem {
CFunctionCore * Function; CFunctionCore * Function = NULL;
SFunctionItem * Next; SFunctionItem * Next = NULL;
}; };
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
@@ -49,32 +49,33 @@ class CApplication
{ {
protected: protected:
// Variables used for configuration // Variables used for configuration
char * ConfigFile; char * ConfigFile = NULL;
char * DefinitionFile; char * DefinitionFile = NULL;
char * AddressFile; char * AddressFile = NULL;
char * BackupFolder = NULL;
// Configuration // Configuration
CDataMember * DataTree; CDataMember * DataTree = NULL;
CJSONparse * JSONparser = NULL; CJSONparse * JSONparser = NULL;
// List // List
TFunctionType * FirstFunctionType; TFunctionType * FirstFunctionType = NULL;
TFunctionItem * FirstFunction; TFunctionItem * FirstFunction = NULL;
// Output // Output
int LogBufSize; int LogBufSize = 0;
EDebugLevel LogLevel; EDebugLevel LogLevel = dlNone;
int LogOutput; int LogOutput = loNone;
public: public:
// Public function vars // Public function vars
CLogCore * Log; CLogCore * Log = NULL;
CSelect * Selector; CSelect * Selector = NULL;
// Configuration // Configuration
CDataMember * Config; CDataMember * Config = NULL;
CDataMember * Definition; CDataMember * Definition = NULL;
CDataMember * AddressList; CDataMember * AddressList = NULL;
// Life Cycle // Life Cycle
CApplication( EDebugLevel pDebugLevel ); CApplication( EDebugLevel pDebugLevel );