Important Update;

- ApplicationCore:
  - Minor log updates
- FunctionCore:
  - Initialise structs & object params in declaration
- DeviceCore:
  - Update logs with more consistent structure
  - Initialise structs & object params in declaration
  - Implemented DeviceType templates
    - Added Add/Get/Destroy methods
    - Load from config or separate template file
    - Build Devices/Params from template
  - Implemented ParamGroups
    - Added Add/Get/Destroy methods
    - Load with DeviceTypes
  - Added JSON parser to read separate template files
  - Bug fix: Getxxxx() methods
This commit is contained in:
Charl Wentzel
2018-12-13 09:17:39 +02:00
parent 90beb031af
commit dc76d99b58
5 changed files with 565 additions and 220 deletions

View File

@@ -27,24 +27,24 @@ class CFunctionCore;
struct SChannel
{
char * Name;
char * Name = NULL;
TChannelLink * FirstInput;
TChannelLink * FirstOutput;
TChannelLink * FirstInput = NULL;
TChannelLink * FirstOutput = NULL;
bool InputEnabled;
bool OutputEnabled;
bool InputEnabled = NULL;
bool OutputEnabled = NULL;
TChannel * Next;
TChannel * Next = NULL;
};
//---------------------------------------------------------------------------
struct SChannelLink
{
CFunctionCore * Function;
char * Name;
CFunctionCore * Function = NULL;
char * Name = NULL;
SChannelLink * Next;
SChannelLink * Next = NULL;
};
//---------------------------------------------------------------------------
@@ -58,20 +58,20 @@ class CFunctionCore
{
protected:
// Function Definition
const char * Type;
char * Name;
const char * Type = NULL;
char * Name = NULL;
// Channels
TChannel * FirstChannel;
TChannel * FirstChannel = NULL;
// Logging
CLogCore * Log;
EDebugLevel LogLevel;
int LogOutput;
CLogCore * Log = NULL;
EDebugLevel LogLevel = dlNone;
int LogOutput = loNone;
// Stored Output
char * StoredOutput;
int StoredOutputLen;
char * StoredOutput = NULL;
int StoredOutputLen = 0;
// Manage Channel
inline TChannel * GetChannel( const char * pName ) {