F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Main Page
+
Namespaces
Namespace List
+
Namespace Members
+
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
z
+
Functions
c
d
e
g
i
m
p
r
s
t
v
w
Variables
Typedefs
Enumerations
+
Enumerator
a
c
e
f
h
i
m
n
o
p
s
u
v
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
~
+
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
~
+
Variables
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
+
Typedefs
c
e
p
s
t
u
+
Enumerations
b
c
d
g
h
l
m
o
p
s
t
u
w
+
Enumerator
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
+
Related Functions
a
b
c
d
f
g
h
l
p
r
s
t
u
v
+
Files
File List
+
File Members
+
All
_
a
b
c
d
f
g
h
i
l
m
n
p
q
r
s
t
u
v
+
Functions
c
i
m
s
u
+
Variables
b
c
d
i
p
s
+
Typedefs
b
c
d
f
i
m
n
p
q
r
s
t
u
Enumerations
+
Enumerator
a
b
c
d
f
g
h
p
r
s
t
+
Macros
_
a
c
d
f
h
l
m
p
r
s
u
v
Examples
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
DeframingProtocol.hpp
Go to the documentation of this file.
1
// ======================================================================
2
// \title DeframingProtocol.hpp
3
// \author mstarch
4
// \brief hpp file for DeframingProtocol class
5
//
6
// \copyright
7
// Copyright 2009-2022, by the California Institute of Technology.
8
// ALL RIGHTS RESERVED. United States Government Sponsorship
9
// acknowledged.
10
//
11
// ======================================================================
12
13
#include "
Svc/FramingProtocol/DeframingProtocolInterface.hpp
"
14
#include "
Fw/Com/ComPacket.hpp
"
15
#include "
Utils/Types/CircularBuffer.hpp
"
16
17
#ifndef SVC_DEFRAMING_PROTOCOL_HPP
18
#define SVC_DEFRAMING_PROTOCOL_HPP
19
20
namespace
Svc
{
21
22
33
class
DeframingProtocol
{
34
public
:
35
virtual
~DeframingProtocol
(){};
39
enum
DeframingStatus
{
40
DEFRAMING_STATUS_SUCCESS
,
41
DEFRAMING_INVALID_SIZE
,
42
DEFRAMING_INVALID_CHECKSUM
,
43
DEFRAMING_MORE_NEEDED
,
44
DEFRAMING_INVALID_FORMAT
,
45
DEFRAMING_MAX_STATUS
46
};
49
DeframingProtocol
();
50
53
void
setup
(
DeframingProtocolInterface
& interface
54
);
55
58
virtual
DeframingStatus
deframe
(
Types::CircularBuffer
& buffer,
59
U32& needed
60
) = 0;
61
62
PROTECTED:
63
DeframingProtocolInterface
*
m_interface
;
64
};
65
}
66
#endif // SVC_DEFRAMING_PROTOCOL_HPP
Svc::DeframingProtocol::DeframingProtocol
DeframingProtocol()
Definition:
DeframingProtocol.cpp:19
Svc::DeframingProtocol::deframe
virtual DeframingStatus deframe(Types::CircularBuffer &buffer, U32 &needed)=0
Svc::DeframingProtocol::m_interface
DeframingProtocolInterface * m_interface
Definition:
DeframingProtocol.hpp:63
Svc::DeframingProtocolInterface
interface supplied to the deframing protocol
Definition:
DeframingProtocolInterface.hpp:29
ComPacket.hpp
Svc::DeframingProtocol::DEFRAMING_MORE_NEEDED
Definition:
DeframingProtocol.hpp:43
Types::CircularBuffer
Definition:
CircularBuffer.hpp:25
Svc::DeframingProtocol::DEFRAMING_MAX_STATUS
Definition:
DeframingProtocol.hpp:45
Svc::DeframingProtocol
Abstract base class representing a deframing protocol.
Definition:
DeframingProtocol.hpp:33
Svc::DeframingProtocol::DEFRAMING_INVALID_CHECKSUM
Definition:
DeframingProtocol.hpp:42
Svc::DeframingProtocol::~DeframingProtocol
virtual ~DeframingProtocol()
Definition:
DeframingProtocol.hpp:35
Svc::DeframingProtocol::DEFRAMING_INVALID_FORMAT
Definition:
DeframingProtocol.hpp:44
Svc::DeframingProtocol::DeframingStatus
DeframingStatus
Status of the deframing call.
Definition:
DeframingProtocol.hpp:39
Svc::DeframingProtocol::DEFRAMING_INVALID_SIZE
Definition:
DeframingProtocol.hpp:41
Svc
Definition:
ActiveRateGroupCfg.hpp:18
Svc::DeframingProtocol::DEFRAMING_STATUS_SUCCESS
Definition:
DeframingProtocol.hpp:40
DeframingProtocolInterface.hpp
CircularBuffer.hpp
Svc::DeframingProtocol::setup
void setup(DeframingProtocolInterface &interface)
Definition:
DeframingProtocol.cpp:21
Svc
FramingProtocol
DeframingProtocol.hpp
Generated by
1.8.14