API
 
Loading...
Searching...
No Matches

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

#include <flatbuffer_log.hpp>

Inherited by MagAOX::logger::ao_operator, MagAOX::logger::config_log, MagAOX::logger::cred2_temps, MagAOX::logger::git_state, MagAOX::logger::observer, MagAOX::logger::ocam_temps, MagAOX::logger::outlet_channel_state, MagAOX::logger::outlet_state, MagAOX::logger::pico_channel, MagAOX::logger::saving_state_change, MagAOX::logger::software_log, MagAOX::logger::state_change, MagAOX::logger::string_log, MagAOX::logger::telem_adctrack, MagAOX::logger::telem_blockgains, MagAOX::logger::telem_chrony_stats, MagAOX::logger::telem_chrony_status, MagAOX::logger::telem_cooler, MagAOX::logger::telem_coreloads, MagAOX::logger::telem_coretemps, MagAOX::logger::telem_dmmodes, MagAOX::logger::telem_dmspeck, MagAOX::logger::telem_drivetemps, MagAOX::logger::telem_fgtimings, MagAOX::logger::telem_flowrpm, MagAOX::logger::telem_fxngen, MagAOX::logger::telem_loopgain, MagAOX::logger::telem_modalgainopt, MagAOX::logger::telem_observer, MagAOX::logger::telem_offloading, MagAOX::logger::telem_pi335, MagAOX::logger::telem_pico, MagAOX::logger::telem_pokecenter, MagAOX::logger::telem_pokeloop, MagAOX::logger::telem_poltrack, MagAOX::logger::telem_position, MagAOX::logger::telem_psfacq, MagAOX::logger::telem_rhusb, MagAOX::logger::telem_saving, MagAOX::logger::telem_sparkleclock, MagAOX::logger::telem_stage, MagAOX::logger::telem_stdcam, MagAOX::logger::telem_tcsi_labmode, MagAOX::logger::telem_tcsi_offload, MagAOX::logger::telem_telcat, MagAOX::logger::telem_teldata, MagAOX::logger::telem_telenv, MagAOX::logger::telem_telpos, MagAOX::logger::telem_telsee, MagAOX::logger::telem_telvane, MagAOX::logger::telem_temps, MagAOX::logger::telem_usage, MagAOX::logger::telem_w2tcsoffloader, MagAOX::logger::telem_zaber, MagAOX::logger::ttmmod_params, and MagAOX::logger::user_log.

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 42 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 54 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 46 of file flatbuffer_log.hpp.

◆ 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 65 of file flatbuffer_log.hpp.


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