F´ Flight Software - C/C++ Documentation
NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Main Page
Related Pages
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
a
b
c
d
g
h
i
m
r
s
t
v
w
Variables
Typedefs
Enumerations
Enumerator
a
b
f
h
i
n
o
p
s
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
x
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
a
b
d
e
f
g
h
i
l
m
n
p
q
r
s
t
u
v
w
x
Typedefs
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
w
Related Functions
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
Functions
i
m
p
s
u
Variables
Typedefs
Enumerations
Enumerator
c
d
e
f
m
o
p
r
s
t
v
Macros
_
a
c
d
f
g
h
i
k
l
m
n
p
r
s
t
u
v
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
FprimeProtocol.hpp
Go to the documentation of this file.
1
// ======================================================================
2
// \title FprimeProtocol.hpp
3
// \author mstarch
4
// \brief hpp file for FprimeProtocol class
5
//
6
// \copyright
7
// Copyright 2009-2021, by the California Institute of Technology.
8
// ALL RIGHTS RESERVED. United States Government Sponsorship
9
// acknowledged.
10
//
11
// ======================================================================
12
13
#ifndef SVC_FPRIME_PROTOCOL_HPP
14
#define SVC_FPRIME_PROTOCOL_HPP
15
16
#include <
Svc/FramingProtocol/FramingProtocol.hpp
>
17
#include <
Svc/FramingProtocol/DeframingProtocol.hpp
>
18
19
namespace
Svc
{
20
21
// Definitions for the F Prime frame header
22
namespace
FpFrameHeader {
23
25
typedef
U32
TokenType
;
26
27
enum
{
29
SIZE
=
sizeof
(
TokenType
) * 2
30
};
31
33
const
TokenType
START_WORD
=
static_cast<
TokenType
>
(0xdeadbeef);
34
35
}
36
38
class
FprimeFraming
:
public
FramingProtocol
{
39
public
:
40
42
FprimeFraming
();
43
45
void
frame
(
46
const
U8
*
const
data,
47
const
U32 size,
48
Fw::ComPacket::ComPacketType
packet_type
49
)
override
;
50
51
};
52
54
class
FprimeDeframing
:
public
DeframingProtocol
{
55
public
:
56
58
FprimeDeframing
();
59
64
bool
validate
(
65
Types::CircularBuffer
& buffer,
66
U32 size
67
);
68
71
DeframingStatus
deframe
(
72
Types::CircularBuffer
& buffer,
73
U32& needed
74
)
override
;
75
76
};
77
78
}
79
#endif // SVC_FPRIME_PROTOCOL_HPP
Svc::FpFrameHeader::START_WORD
const TokenType START_WORD
The start word for F Prime framing.
Definition:
FprimeProtocol.hpp:33
Svc::FprimeFraming
Implements the F Prime framing protocol.
Definition:
FprimeProtocol.hpp:38
Svc::FprimeDeframing::FprimeDeframing
FprimeDeframing()
Constructor.
Definition:
FprimeProtocol.cpp:22
U8
uint8_t U8
8-bit unsigned integer
Definition:
BasicTypes.hpp:73
DeframingProtocol.hpp
Svc::FpFrameHeader::SIZE
@ SIZE
Header size for F Prime frame header.
Definition:
FprimeProtocol.hpp:29
Svc::FprimeDeframing::deframe
DeframingStatus deframe(Types::CircularBuffer &buffer, U32 &needed) override
Definition:
FprimeProtocol.cpp:84
Svc::FpFrameHeader::TokenType
U32 TokenType
Token type for F Prime frame header.
Definition:
FprimeProtocol.hpp:25
Svc::DeframingProtocol::DeframingStatus
DeframingStatus
Status of the deframing call.
Definition:
DeframingProtocol.hpp:39
Svc::FprimeFraming::FprimeFraming
FprimeFraming()
Constructor.
Definition:
FprimeProtocol.cpp:20
Svc::FramingProtocol
abstract class representing a framing protocol
Definition:
FramingProtocol.hpp:31
Svc
Definition:
ActiveRateGroupCfg.hpp:18
Svc::DeframingProtocol
Abstract base class representing a deframing protocol.
Definition:
DeframingProtocol.hpp:33
Fw::ComPacket::ComPacketType
ComPacketType
Definition:
ComPacket.hpp:21
Svc::FprimeDeframing::validate
bool validate(Types::CircularBuffer &buffer, U32 size)
Definition:
FprimeProtocol.cpp:61
Types::CircularBuffer
Definition:
CircularBuffer.hpp:28
FramingProtocol.hpp
Svc::FprimeDeframing
Implements the F Prime deframing protocol.
Definition:
FprimeProtocol.hpp:54
Svc::FprimeFraming::frame
void frame(const U8 *const data, const U32 size, Fw::ComPacket::ComPacketType packet_type) override
Implements the frame method.
Definition:
FprimeProtocol.cpp:24
Svc
FramingProtocol
FprimeProtocol.hpp
Generated by
1.8.17