F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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