F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
ActiveLoggerImpl.hpp
Go to the documentation of this file.
1 /*
2  * ActiveLoggerImpl.hpp
3  *
4  * Created on: Mar 28, 2014
5  * Author: tcanham
6  */
7 
8 #ifndef ACTIVELOGGERIMPL_HPP_
9 #define ACTIVELOGGERIMPL_HPP_
10 
12 #include <Fw/Log/LogPacket.hpp>
13 #include <ActiveLoggerImplCfg.hpp>
14 
15 namespace Svc {
16 
18  public:
19  ActiveLoggerImpl(const char* compName);
20  virtual ~ActiveLoggerImpl();
21  void init(
22  NATIVE_INT_TYPE queueDepth,
23  NATIVE_INT_TYPE instance
24  );
26  PRIVATE:
29 
31  FwOpcodeType opCode,
32  U32 cmdSeq,
35 
37  FwOpcodeType opCode,
38  U32 cmdSeq,
41 
43  FwOpcodeType opCode,
44  U32 cmdSeq,
45  const Fw::CmdStringArg& filename);
46 
48  FwOpcodeType opCode,
49  U32 cmdSeq,
50  U32 ID,
51  IdFilterEnabled IdFilterEnable
52  );
53 
55  FwOpcodeType opCode,
56  U32 cmdSeq
57  );
58 
61  void pingIn_handler(
62  const NATIVE_INT_TYPE portNum,
63  U32 key
64  );
65 
66 
67  // Input filter state
69  InputFilterEnabled enabled; //<! filter is enabled
70  } m_inFilterState[InputFilterLevel_MAX];
71 
72  // Send filter state
76 
77  // Working members
80 
81  // Circular buffers for events
84 
87 
90 
93 
96 
99 
102 
103  // array of filtered event IDs.
104  // value of 0 means no entry
106 
107  };
108 
109 }
110 #endif /* ACTIVELOGGERIMPL_HPP_ */
Svc::ActiveLoggerComponentBase::InputFilterLevel
PROTECTED InputFilterLevel_MAX InputFilterLevel
Definition: ActiveLoggerComponentAc.hpp:543
Svc::ActiveLoggerComponentBase::IdFilterEnabled
IdFilterEnabled
Definition: ActiveLoggerComponentAc.hpp:567
Svc::ActiveLoggerImpl::timeTag
PROTECTED FwEventIdType Fw::Time & timeTag
Definition: ActiveLoggerImpl.hpp:27
Svc::ActiveLoggerComponentBase::FilterLevel
PROTECTED U32 InputFilterLevel FilterLevel
Definition: ActiveLoggerComponentAc.hpp:598
PRIVATE
#define PRIVATE
overridable private for unit testing
Definition: BasicTypes.hpp:118
ACTIVITY_HI_EVENT_CB_DEPTH
@ ACTIVITY_HI_EVENT_CB_DEPTH
ACTIVITY HI event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:38
Fw::Time
Definition: Time.hpp:10
WARNING_LO_EVENT_CB_DEPTH
@ WARNING_LO_EVENT_CB_DEPTH
WARNING LO event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:36
WARNING_HI_EVENT_CB_DEPTH
@ WARNING_HI_EVENT_CB_DEPTH
WARNING HI event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:35
Svc::ActiveLoggerComponentBase::portNum
PRIVATE NATIVE_INT_TYPE portNum
Definition: ActiveLoggerComponentAc.hpp:971
Svc::ActiveLoggerImpl::ALOG_DUMP_FILTER_STATE_cmdHandler
void ALOG_DUMP_FILTER_STATE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)
Handler for command ALOG_DUMP_FILTER_STATE.
Definition: ActiveLoggerImpl.cpp:509
Svc::ActiveLoggerImpl::m_warningHiCb
Fw::ComBuffer m_warningHiCb[WARNING_HI_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:85
Svc::ActiveLoggerComponentBase::FilterEnable
PROTECTED U32 InputFilterLevel InputFilterEnabled FilterEnable
Definition: ActiveLoggerComponentAc.hpp:600
Svc::ActiveLoggerImpl::m_diagnosticCb
Fw::ComBuffer m_diagnosticCb[DIAGNOSTIC_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:100
Fw::LogBuffer
Definition: LogBuffer.hpp:22
Fw::LogSeverity
LogSeverity
Definition: LogPortAc.hpp:26
Svc::ActiveLoggerImpl::t_inputFilterState::enabled
InputFilterEnabled enabled
Definition: ActiveLoggerImpl.hpp:69
Svc::ActiveLoggerImpl::ActiveLoggerImpl
ActiveLoggerImpl(const char *compName)
constructor
Definition: ActiveLoggerImpl.cpp:14
Svc::ActiveLoggerImpl::m_fatalCb
Fw::ComBuffer m_fatalCb[FATAL_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:82
TELEM_ID_FILTER_SIZE
@ TELEM_ID_FILTER_SIZE
Size of telemetry ID filter.
Definition: ActiveLoggerImplCfg.hpp:41
Svc::ActiveLoggerComponentBase::PROTECTED
PROTECTED PROTECTED
Definition: ActiveLoggerComponentAc.hpp:585
Svc::ActiveLoggerImpl::t_sendFilterState
Definition: ActiveLoggerImpl.hpp:73
ActiveLoggerComponentAc.hpp
Fw::CmdStringArg
Definition: CmdString.hpp:11
Svc::ActiveLoggerImpl::pingIn_handler
void pingIn_handler(const NATIVE_INT_TYPE portNum, U32 key)
Definition: ActiveLoggerImpl.cpp:533
Svc::ActiveLoggerImpl
Definition: ActiveLoggerImpl.hpp:17
Svc::ActiveLoggerImpl::ALOG_SET_EVENT_SEND_FILTER_cmdHandler
void ALOG_SET_EVENT_SEND_FILTER_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, SendFilterLevel FilterLevel, SendFilterEnabled FilterEnable)
Handler for command ALOG_SET_EVENT_SEND_FILTER.
Definition: ActiveLoggerImpl.cpp:208
ActiveLoggerImplCfg.hpp
Svc::ActiveLoggerImpl::m_filteredIDs
FwEventIdType m_filteredIDs[TELEM_ID_FILTER_SIZE]
Definition: ActiveLoggerImpl.hpp:105
Svc::ActiveLoggerImpl::loqQueue_internalInterfaceHandler
void loqQueue_internalInterfaceHandler(FwEventIdType id, Fw::Time &timeTag, QueueLogSeverity severity, Fw::LogBuffer &args)
Definition: ActiveLoggerImpl.cpp:129
Svc::ActiveLoggerImpl::ALOG_DUMP_EVENT_LOG_cmdHandler
void ALOG_DUMP_EVENT_LOG_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &filename)
Handler for command ALOG_DUMP_EVENT_LOG.
Definition: ActiveLoggerImpl.cpp:220
Fw::ObjBase::init
void init(void)
Object initializer.
Definition: ObjBase.cpp:26
Svc::ActiveLoggerImpl::m_activityHiCb
Fw::ComBuffer m_activityHiCb[ACTIVITY_HI_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:94
Svc::ActiveLoggerImpl::m_logPacket
Fw::LogPacket m_logPacket
packet buffer for assembling log packets
Definition: ActiveLoggerImpl.hpp:78
Svc::ActiveLoggerImpl::t_inputFilterState
Definition: ActiveLoggerImpl.hpp:68
Svc::ActiveLoggerImpl::m_activityLoHead
NATIVE_UINT_TYPE m_activityLoHead
Definition: ActiveLoggerImpl.hpp:98
Svc::ActiveLoggerImpl::m_sendFilterState
struct Svc::ActiveLoggerImpl::t_sendFilterState m_sendFilterState[SendFilterLevel_MAX]
FwOpcodeType
#define FwOpcodeType
Type representation for a command opcode.
Definition: FpConfig.hpp:62
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:30
DIAGNOSTIC_EVENT_CB_DEPTH
@ DIAGNOSTIC_EVENT_CB_DEPTH
DIAGNOSTIC event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:40
Svc::ActiveLoggerImpl::args
PROTECTED FwEventIdType Fw::Time Fw::LogSeverity Fw::LogBuffer & args
Definition: ActiveLoggerImpl.hpp:27
Svc::ActiveLoggerComponentBase
Auto-generated base for ActiveLogger component.
Definition: ActiveLoggerComponentAc.hpp:48
COMMAND_EVENT_CB_DEPTH
@ COMMAND_EVENT_CB_DEPTH
COMMAND event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:37
Svc::ActiveLoggerImpl::m_fatalHead
NATIVE_UINT_TYPE m_fatalHead
Definition: ActiveLoggerImpl.hpp:83
Svc::ActiveLoggerImpl::m_diagnosticHead
NATIVE_UINT_TYPE m_diagnosticHead
Definition: ActiveLoggerImpl.hpp:101
Svc::ActiveLoggerImpl::m_inFilterState
struct Svc::ActiveLoggerImpl::t_inputFilterState m_inFilterState[InputFilterLevel_MAX]
Svc::ActiveLoggerImpl::ALOG_SET_EVENT_REPORT_FILTER_cmdHandler
void ALOG_SET_EVENT_REPORT_FILTER_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, InputFilterLevel FilterLevel, InputFilterEnabled FilterEnable)
Definition: ActiveLoggerImpl.cpp:196
Svc::ActiveLoggerImpl::m_warningLoCb
Fw::ComBuffer m_warningLoCb[WARNING_LO_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:88
Svc::ActiveLoggerComponentBase::SendFilterLevel_MAX
@ SendFilterLevel_MAX
Definition: ActiveLoggerComponentAc.hpp:558
Svc::ActiveLoggerImpl::t_sendFilterState::enabled
SendFilterEnabled enabled
filter is enabled
Definition: ActiveLoggerImpl.hpp:74
ACTIVITY_LO_EVENT_CB_DEPTH
@ ACTIVITY_LO_EVENT_CB_DEPTH
ACTIVITY LO circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:39
FATAL_EVENT_CB_DEPTH
@ FATAL_EVENT_CB_DEPTH
FATAL event circular buffer depth.
Definition: ActiveLoggerImplCfg.hpp:34
Svc::ActiveLoggerImpl::ALOG_SET_ID_FILTER_cmdHandler
void ALOG_SET_ID_FILTER_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, U32 ID, IdFilterEnabled IdFilterEnable)
Handler for command ALOG_SET_ID_FILTER.
Definition: ActiveLoggerImpl.cpp:454
Svc
Definition: ActiveLoggerComponentAc.cpp:22
Svc::ActiveLoggerComponentBase::key
PROTECTED U32 key
Definition: ActiveLoggerComponentAc.hpp:324
Svc::ActiveLoggerComponentBase::SendFilterLevel
SendFilterLevel
Definition: ActiveLoggerComponentAc.hpp:551
Svc::ActiveLoggerImpl::m_activityLoCb
Fw::ComBuffer m_activityLoCb[ACTIVITY_LO_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:97
Svc::ActiveLoggerImpl::severity
PROTECTED FwEventIdType Fw::Time Fw::LogSeverity severity
Definition: ActiveLoggerImpl.hpp:27
Svc::ActiveLoggerComponentBase::InputFilterEnabled
InputFilterEnabled
Definition: ActiveLoggerComponentAc.hpp:545
Svc::ActiveLoggerImpl::m_warningHiHead
NATIVE_UINT_TYPE m_warningHiHead
Definition: ActiveLoggerImpl.hpp:86
LogPacket.hpp
FwEventIdType
#define FwEventIdType
Type representation for a event id.
Definition: FpConfig.hpp:70
Svc::ActiveLoggerImpl::m_commandHead
NATIVE_UINT_TYPE m_commandHead
Definition: ActiveLoggerImpl.hpp:92
Svc::ActiveLoggerComponentBase::cmdSeq
PROTECTED U32 cmdSeq
Definition: ActiveLoggerComponentAc.hpp:597
Fw::LogPacket
Definition: LogPacket.hpp:17
NATIVE_INT_TYPE
int NATIVE_INT_TYPE
native integer type declaration
Definition: BasicTypes.hpp:29
Svc::ActiveLoggerComponentBase::SendFilterEnabled
SendFilterEnabled
Definition: ActiveLoggerComponentAc.hpp:561
Fw::ComBuffer
Definition: ComBuffer.hpp:21
Svc::ActiveLoggerImpl::~ActiveLoggerImpl
virtual ~ActiveLoggerImpl()
destructor
Definition: ActiveLoggerImpl.cpp:55
Svc::ActiveLoggerImpl::m_commandCb
Fw::ComBuffer m_commandCb[COMMAND_EVENT_CB_DEPTH]
Definition: ActiveLoggerImpl.hpp:91
Svc::ActiveLoggerImpl::m_comBuffer
Fw::ComBuffer m_comBuffer
com buffer for sending event buffers
Definition: ActiveLoggerImpl.hpp:79
Svc::ActiveLoggerImpl::m_warningLoHead
NATIVE_UINT_TYPE m_warningLoHead
Definition: ActiveLoggerImpl.hpp:89
Svc::ActiveLoggerImpl::m_activityHiHead
NATIVE_UINT_TYPE m_activityHiHead
Definition: ActiveLoggerImpl.hpp:95
Svc::ActiveLoggerComponentBase::QueueLogSeverity
PROTECTED QueueLogSeverity_MAX QueueLogSeverity
Definition: ActiveLoggerComponentAc.hpp:870