F´ Flight Software - C/C++ Documentation devel
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GenericHubComponentImpl.hpp
Go to the documentation of this file.
1// ======================================================================
2// \title GenericHubComponentImpl.hpp
3// \author mstarch
4// \brief hpp file for GenericHub component implementation class
5//
6// \copyright
7// Copyright 2009-2015, by the California Institute of Technology.
8// ALL RIGHTS RESERVED. United States Government Sponsorship
9// acknowledged.
10//
11// ======================================================================
12
13#ifndef GenericHub_HPP
14#define GenericHub_HPP
15
17
18namespace Svc {
19
21 public:
34
35 const static U32 GENERIC_HUB_DATA_SIZE = 1024;
36 // ----------------------------------------------------------------------
37 // Construction, initialization, and destruction
38 // ----------------------------------------------------------------------
39
42 GenericHubComponentImpl(const char* const compName
43 );
44
47 void init(const NATIVE_INT_TYPE instance = 0
48 );
49
53
54 PRIVATE:
55 // ----------------------------------------------------------------------
56 // Handler implementations for user-defined typed input ports
57 // ----------------------------------------------------------------------
58
61 void buffersIn_handler(const NATIVE_INT_TYPE portNum,
62 Fw::Buffer& fwBuffer);
63
66 void dataIn_handler(const NATIVE_INT_TYPE portNum,
67 Fw::Buffer& fwBuffer);
68
71 void LogRecv_handler(const NATIVE_INT_TYPE portNum,
72 FwEventIdType id,
73 Fw::Time& timeTag,
74 const Fw::LogSeverity& severity,
75 Fw::LogBuffer& args
76 );
77
80 void TlmRecv_handler(const NATIVE_INT_TYPE portNum,
81 FwChanIdType id,
82 Fw::Time& timeTag,
83 Fw::TlmBuffer& val
84 );
85
86 // ----------------------------------------------------------------------
87 // Handler implementations for user-defined serial input ports
88 // ----------------------------------------------------------------------
89
92 void portIn_handler(NATIVE_INT_TYPE portNum,
94 );
95
96 // Helpers and members
97 void send_data(const HubType type, const NATIVE_INT_TYPE port, const U8* data, const U32 size);
98};
99
100} // end namespace Svc
101
102#endif
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
uint8_t U8
8-bit unsigned integer
Definition BasicTypes.h:26
U32 FwChanIdType
Definition FpConfig.h:59
U32 FwEventIdType
Definition FpConfig.h:62
Enum representing event severity.
void init()
Object initializer.
Definition ObjBase.cpp:27
Auto-generated base for GenericHub component.
@ HUB_TYPE_BUFFER
Buffer type transmission.
@ HUB_TYPE_CHANNEL
Telemetry channel type.
@ HUB_TYPE_PORT
Port type transmission.
GenericHubComponentImpl(const char *const compName)