API
 
Loading...
Searching...
No Matches

Base class for logs consisting of a flatbuffer message. More...

#include <flatbuffer_log.hpp>

Inheritance diagram for MagAOX::logger::flatbuffer_log:
Inheritance graph
Collaboration diagram for MagAOX::logger::flatbuffer_log:
Collaboration graph

Static Public Member Functions

static flatlogs::msgLenT length (const fbMessage &msg)
 Get the length of the message.
 
static int format (void *msgBuffer, const fbMessage &msg)
 Format the buffer given the input message.
 
static std::string msgJSON (void *msgBuffer, flatlogs::msgLenT len, const uint8_t *binarySchema, const unsigned int binarySchemaLength)
 

Detailed Description

Base class for logs consisting of a flatbuffer message.

Such logs are used to log arbitrary data structures using the flatbuffer protocol. Does not have eventCode or defaultLevel, so this can not be used as a log type directly.

Definition at line 41 of file flatbuffer_log.hpp.

Member Function Documentation

◆ format()

static int MagAOX::logger::flatbuffer_log::format ( void *  msgBuffer,
const fbMessage msg 
)
inlinestatic

Format the buffer given the input message.

Todo:
this is an unneccesary memcpy from the FlatBufferBuilder, we need to figure out how to not do this.
Parameters
[out]msgBufferthe buffer, must be pre-allocated to size length(msg)
[in]msgthe message which contains a flatbuffer builder, from which the data are memcpy-ed.

Definition at line 53 of file flatbuffer_log.hpp.

◆ length()

static flatlogs::msgLenT MagAOX::logger::flatbuffer_log::length ( const fbMessage msg)
inlinestatic

Get the length of the message.

Parameters
[in]msgthe fbMessage type holding a FlatBufferBuilder

Definition at line 45 of file flatbuffer_log.hpp.

Referenced by CConfigLog_0::CConfigLog_0(), CGitState_0::CGitState_0(), CObserver_0::CObserver_0(), COcamTemps_0::COcamTemps_0(), COutletChannelState_0::COutletChannelState_0(), COutletState_0::COutletState_0(), CPicoChannel_0::CPicoChannel_0(), CSavingStart_0::CSavingStart_0(), CSavingStop_0::CSavingStop_0(), CSoftwareLog_0::CSoftwareLog_0(), CSoftwareLog_1::CSoftwareLog_1(), CSoftwareLog_2::CSoftwareLog_2(), CSoftwareLog_3::CSoftwareLog_3(), CSoftwareLog_4::CSoftwareLog_4(), CSoftwareLog_5::CSoftwareLog_5(), CSoftwareLog_6::CSoftwareLog_6(), CStateChange_0::CStateChange_0(), CTelemBlockgains_0::CTelemBlockgains_0(), CTelemChronyStats_0::CTelemChronyStats_0(), CTelemChronyStatus_0::CTelemChronyStatus_0(), CTelemCooler_0::CTelemCooler_0(), CTelemCoreloads_0::CTelemCoreloads_0(), CTelemCoretemps_0::CTelemCoretemps_0(), CTelemDmmodes_0::CTelemDmmodes_0(), CTelemDmspeck_0::CTelemDmspeck_0(), CTelemDrivetemps_0::CTelemDrivetemps_0(), CTelemFgtimings_0::CTelemFgtimings_0(), CTelemFxngen_0::CTelemFxngen_0(), CTelemLoopgain_0::CTelemLoopgain_0(), CTelemObserver_0::CTelemObserver_0(), CTelemPi335_0::CTelemPi335_0(), CTelemPico_0::CTelemPico_0(), CTelemPokecenter_0::CTelemPokecenter_0(), CTelemPokecenter_1::CTelemPokecenter_1(), CTelemPokeloop_0::CTelemPokeloop_0(), CTelemPosition_0::CTelemPosition_0(), CTelemRhusb_0::CTelemRhusb_0(), CTelemSaving_0::CTelemSaving_0(), CTelemSavingState_0::CTelemSavingState_0(), CTelemSparkleclock_0::CTelemSparkleclock_0(), CTelemStage_0::CTelemStage_0(), CTelemStdcam_0::CTelemStdcam_0(), CTelemStdcam_1::CTelemStdcam_1(), CTelemTelcat_0::CTelemTelcat_0(), CTelemTeldata_0::CTelemTeldata_0(), CTelemTelenv_0::CTelemTelenv_0(), CTelemTelpos_0::CTelemTelpos_0(), CTelemTelsee_0::CTelemTelsee_0(), CTelemTelvane_0::CTelemTelvane_0(), CTelemTemps_0::CTelemTemps_0(), CTelemUsage_0::CTelemUsage_0(), CTelemZaber_0::CTelemZaber_0(), CTextLog_0::CTextLog_0(), CTextLog_1::CTextLog_1(), CTtmmodParams_0::CTtmmodParams_0(), and CUserLog_0::CUserLog_0().

◆ msgJSON()

static std::string MagAOX::logger::flatbuffer_log::msgJSON ( void *  msgBuffer,
flatlogs::msgLenT  len,
const uint8_t *  binarySchema,
const unsigned int  binarySchemaLength 
)
inlinestatic
Parameters
[in]msgBufferBuffer containing the flatbuffer serialized message.
[in]len[unused] length of msgBuffer.
[in]binarySchemaflatbuffers binary schema for this log type
[in]binarySchemaLengthflatbuffers binary schema length

Definition at line 64 of file flatbuffer_log.hpp.


The documentation for this struct was generated from the following file: