aqhome-react: allow for int values.
those will be used e.g. to count number of open windows etc.
This commit is contained in:
@@ -68,6 +68,7 @@ AQHREACT_DATAOBJECT *AQHREACT_DataObject_dup(const AQHREACT_DATAOBJECT *origObje
|
||||
dataObject->timestamp=origObject->timestamp;
|
||||
dataObject->dataType=origObject->dataType;
|
||||
dataObject->doubleData=origObject->doubleData;
|
||||
dataObject->intData=origObject->intData;
|
||||
AQHREACT_DataObject_SetStringData(dataObject, origObject->stringData);
|
||||
return dataObject;
|
||||
}
|
||||
@@ -188,11 +189,27 @@ void AQHREACT_DataObject_SetStringData(AQHREACT_DATAOBJECT *dataObject, const ch
|
||||
|
||||
|
||||
|
||||
int AQHREACT_DataObject_GetIntData(const AQHREACT_DATAOBJECT *dataObject)
|
||||
{
|
||||
return dataObject?(dataObject->intData):0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void AQHREACT_DataObject_SetIntData(AQHREACT_DATAOBJECT *dataObject, int i)
|
||||
{
|
||||
if (dataObject)
|
||||
dataObject->intData=i;
|
||||
}
|
||||
|
||||
|
||||
|
||||
const char *AQHREACT_DataObjectType_toString(int t)
|
||||
{
|
||||
switch(t) {
|
||||
case AQHREACT_DATAOBJECTTYPE_DOUBLE: return "double";
|
||||
case AQHREACT_DATAOBJECTTYPE_STRING: return "string";
|
||||
case AQHREACT_DATAOBJECTTYPE_INT: return "int";
|
||||
default: return "unknown";
|
||||
}
|
||||
}
|
||||
@@ -206,6 +223,8 @@ int AQHREACT_DataObjectType_fromString(const char *s)
|
||||
return AQHREACT_DATAOBJECTTYPE_DOUBLE;
|
||||
else if (strcasecmp(s, "string")==0)
|
||||
return AQHREACT_DATAOBJECTTYPE_STRING;
|
||||
else if (strcasecmp(s, "int")==0)
|
||||
return AQHREACT_DATAOBJECTTYPE_INT;
|
||||
}
|
||||
|
||||
return AQHREACT_DATAOBJECTTYPE_UNKNOWN;
|
||||
@@ -230,6 +249,9 @@ void AQHREACT_DataObject_Dump(const AQHREACT_DATAOBJECT *dataObject, GWEN_BUFFER
|
||||
case AQHREACT_DATAOBJECTTYPE_STRING:
|
||||
GWEN_Buffer_AppendArgs(buf, "%s (STRING) [%s]\n", AQHREACT_DataObject_GetStringData(dataObject), sVarSystemId?sVarSystemId:"");
|
||||
break;
|
||||
case AQHREACT_DATAOBJECTTYPE_INT:
|
||||
GWEN_Buffer_AppendArgs(buf, "%d (INT) [%s]\n", AQHREACT_DataObject_GetIntData(dataObject), sVarSystemId?sVarSystemId:"");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -20,7 +20,8 @@ GWEN_LIST_FUNCTION_DEFS(AQHREACT_DATAOBJECT, AQHREACT_DataObject)
|
||||
enum {
|
||||
AQHREACT_DATAOBJECTTYPE_UNKNOWN=0,
|
||||
AQHREACT_DATAOBJECTTYPE_DOUBLE,
|
||||
AQHREACT_DATAOBJECTTYPE_STRING
|
||||
AQHREACT_DATAOBJECTTYPE_STRING,
|
||||
AQHREACT_DATAOBJECTTYPE_INT
|
||||
};
|
||||
|
||||
|
||||
@@ -55,6 +56,9 @@ void AQHREACT_DataObject_SetDoubleData(AQHREACT_DATAOBJECT *dataObject, double i
|
||||
const char *AQHREACT_DataObject_GetStringData(const AQHREACT_DATAOBJECT *dataObject);
|
||||
void AQHREACT_DataObject_SetStringData(AQHREACT_DATAOBJECT *dataObject, const char *s);
|
||||
|
||||
int AQHREACT_DataObject_GetIntData(const AQHREACT_DATAOBJECT *dataObject);
|
||||
void AQHREACT_DataObject_SetIntData(AQHREACT_DATAOBJECT *dataObject, int i);
|
||||
|
||||
void AQHREACT_DataObject_Dump(const AQHREACT_DATAOBJECT *dataObject, GWEN_BUFFER *buf, int indent);
|
||||
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ struct AQHREACT_DATAOBJECT {
|
||||
uint64_t timestamp;
|
||||
int dataType;
|
||||
double doubleData;
|
||||
int intData;
|
||||
char *stringData;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user