Hi Mikko,
My project based on GuruxDLMSServer needs to store data that the client reads and writes. This object stores an array of structures, which contain instructions for working with the returned data from profile generic objects, something like filters.
It turned out to be easy enough to compose and create a stored value from the default data of the CGXByteBuffer type, which GuruxDLMSDirector can parse and display, but I cannot figure out how to parse and retrieve the stored information in the server from the updated object that the client has changed.
In my case, I need to convert the CGXByteBuffer to an array of CGXDLMSVariant, extract a ByteBuffer from each and then work as with structures.
You can give me an easy recipe for extracting data if I know their type and structure in advance?
Here is data bytearray:
01 11 02 03 09 06 FE FE 94 FE FE 25 01 00 02 04 09 06 FE FE 94 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 FE FE 25 01 00 02 04 09 06 FE FE 99 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 98 FE FE 25 01 00 02 04 09 06 FE FE 98 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 98 FE FE 25 01 00 02 04 09 06 FE FE 98 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 94 FE FE 25 01 00 02 04 09 06 FE FE 94 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 94 FE FE 25 01 00 02 04 09 06 FE FE 94 FE FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 FE 25 01 00 02 04 09 06 FE FE 99 98 FE 25 09 01 09 09 01 09 01 00 02 03 09 06 FE FE 99 98 10 25 01 00 02 04 09 06 FE FE 99 98 10 25 09 01 09 09 01 09 01 00
Hi,
Hi,
You can do it like this:
CGXByteBuffer bb;
CGXDLMSVariant newValue;
//Add data to bb.
CGXDLMSClient::ChangeType(bb, DLMS_DATA_TYPE_NONE, newValue);
BR,
Mikko
Thanks for the quick reply!
Thanks for the quick reply!