F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
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
16#include "Svc/GenericHub/GenericHubComponentAc.hpp"
17
18namespace Svc {
19
20class GenericHubComponentImpl : public GenericHubComponentBase {
21 public:
27 enum HubType {
31 };
32
33 const static U32 GENERIC_HUB_DATA_SIZE = 1024;
34 // ----------------------------------------------------------------------
35 // Construction, initialization, and destruction
36 // ----------------------------------------------------------------------
37
40 GenericHubComponentImpl(const char* const compName
41 );
42
45 void init(const NATIVE_INT_TYPE instance = 0
46 );
47
51
52 PRIVATE:
53 // ----------------------------------------------------------------------
54 // Handler implementations for user-defined typed input ports
55 // ----------------------------------------------------------------------
56
59 void buffersIn_handler(const NATIVE_INT_TYPE portNum,
60 Fw::Buffer& fwBuffer);
61
64 void dataIn_handler(const NATIVE_INT_TYPE portNum,
65 Fw::Buffer& fwBuffer);
66
67 // ----------------------------------------------------------------------
68 // Handler implementations for user-defined serial input ports
69 // ----------------------------------------------------------------------
70
73 void portIn_handler(NATIVE_INT_TYPE portNum,
75 );
76
77 // Helpers and members
78 void send_data(const HubType type, const NATIVE_INT_TYPE port, const U8* data, const U32 size);
79};
80
81} // end namespace Svc
82
83#endif
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
uint8_t U8
8-bit unsigned integer
Definition BasicTypes.h:26
@ HUB_TYPE_BUFFER
Buffer type transmission.
@ HUB_TYPE_PORT
Port type transmission.
void init(const NATIVE_INT_TYPE instance=0)