F´ Flight Software - C/C++ Documentation  NASA-v2.1.0
A framework for building embedded system applications to NASA flight quality standards.
HashBuffer.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title Hash.hpp
3 // \author dinkel
4 // \brief hpp file for Hash 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 UTILS_HASH_BUFFER_HPP
14 #define UTILS_HASH_BUFFER_HPP
15 
16 #include <Fw/Types/BasicTypes.hpp>
18 #include <Fw/Types/Assert.hpp>
20 
21 namespace Utils {
22 
27  public:
28  // ----------------------------------------------------------------------
29  // Construction and destruction
30  // ----------------------------------------------------------------------
31 
34  HashBuffer(const U8 *args, NATIVE_UINT_TYPE size);
35  HashBuffer(const HashBuffer& other);
36  HashBuffer();
37 
40  virtual ~HashBuffer();
41 
42  // ----------------------------------------------------------------------
43  // Public instance methods
44  // ----------------------------------------------------------------------
45 
48  const HashBuffer& operator=(const HashBuffer& other);
49 
52  bool operator==(const HashBuffer& other) const;
53 
56  bool operator!=(const HashBuffer& other) const;
57 
60  NATIVE_UINT_TYPE getBuffCapacity(void) const; // !< returns capacity, not current size, of buffer
61 
64  U8* getBuffAddr(void);
65  const U8* getBuffAddr(void) const;
66 
67  private:
68  // ----------------------------------------------------------------------
69  // Private member variables
70  // ----------------------------------------------------------------------
71 
74  U8 m_bufferData[HASH_DIGEST_LENGTH]; // packet data buffer
75  };
76 }
77 
78 #endif
Utils::HashBuffer::~HashBuffer
virtual ~HashBuffer()
Definition: HashBufferCommon.cpp:14
Fw::SerializeBufferBase
Definition: Serializable.hpp:43
Serializable.hpp
Utils::HashBuffer::getBuffCapacity
NATIVE_UINT_TYPE getBuffCapacity(void) const
Definition: HashBufferCommon.cpp:48
U8
uint8_t U8
8-bit unsigned integer
Definition: BasicTypes.hpp:76
Utils::HashBuffer::operator=
const HashBuffer & operator=(const HashBuffer &other)
Definition: HashBufferCommon.cpp:22
Utils
Definition: CRCChecker.cpp:20
HashConfig.hpp
Utils::HashBuffer
A container class for holding a hash buffer.
Definition: HashBuffer.hpp:26
Assert.hpp
Utils::HashBuffer::getBuffAddr
U8 * getBuffAddr(void)
Definition: HashBufferCommon.cpp:44
HASH_DIGEST_LENGTH
#define HASH_DIGEST_LENGTH
Definition: CRC32.hpp:18
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:30
Utils::HashBuffer::operator!=
bool operator!=(const HashBuffer &other) const
Definition: HashBufferCommon.cpp:36
Utils::HashBuffer::operator==
bool operator==(const HashBuffer &other) const
Definition: HashBufferCommon.cpp:28
Utils::HashBuffer::HashBuffer
HashBuffer()
Definition: HashBufferCommon.cpp:6
BasicTypes.hpp
Declares ISF basic types.