F´ Flight Software - C/C++ Documentation  NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
SerializableFile.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title SerializableFile.hpp
3 // \author dinkel
4 // \brief hpp file for SerializableFile
5 //
6 // \copyright
7 // Copyright 2009-2016, by the California Institute of Technology.
8 // ALL RIGHTS RESERVED. United States Government Sponsorship
9 // acknowledged.
10 //
11 // ======================================================================
12 
13 #ifndef Fw_SerializableFile_HPP
14 #define Fw_SerializableFile_HPP
15 
19 
20 namespace Fw {
21 
24 
25  public:
26  enum Status {
32  };
33 
34  // NOTE!: This should not be used with an allocator that can return a smaller buffer than requested
35  SerializableFile(MemAllocator* allocator, NATIVE_UINT_TYPE maxSerializedSize);
37 
38  Status load(const char* fileName, Serializable& serializable);
39  Status save(const char* fileName, Serializable& serializable);
40 
41  PRIVATE:
42  void reset();
43  MemAllocator* allocator;
44  bool recoverable; // don't care; for allocator
45  NATIVE_UINT_TYPE actualSize; // for checking
46  SerialBuffer buffer;
47  };
48 }
49 
50 #endif
Fw::SerializableFile::DESERIALIZATION_ERROR
@ DESERIALIZATION_ERROR
Definition: SerializableFile.hpp:31
Fw::SerializableFile::SerializableFile
SerializableFile(MemAllocator *allocator, NATIVE_UINT_TYPE maxSerializedSize)
Definition: SerializableFile.cpp:19
Fw::SerialBuffer
A variable-length serializable buffer.
Definition: SerialBuffer.hpp:24
Fw::SerializableFile::FILE_WRITE_ERROR
@ FILE_WRITE_ERROR
Definition: SerializableFile.hpp:29
Serializable.hpp
MemAllocator.hpp
Defines a base class for a memory allocator for classes.
Fw::SerializableFile
The type of a packet header.
Definition: SerializableFile.hpp:23
Fw::SerializableFile::Status
Status
Definition: SerializableFile.hpp:26
Fw::Serializable
forward declaration
Definition: Serializable.hpp:26
Fw::SerializableFile::~SerializableFile
~SerializableFile()
Definition: SerializableFile.cpp:30
Fw::SerializableFile::OP_OK
@ OP_OK
Definition: SerializableFile.hpp:27
Fw::SerializableFile::save
Status save(const char *fileName, Serializable &serializable)
Definition: SerializableFile.cpp:63
SerialBuffer.hpp
Fw::SerializableFile::load
Status load(const char *fileName, Serializable &serializable)
Definition: SerializableFile.cpp:34
NATIVE_UINT_TYPE
unsigned int NATIVE_UINT_TYPE
native unsigned integer type declaration
Definition: BasicTypes.hpp:30
Fw::MemAllocator
Definition: MemAllocator.hpp:44
Fw::SerializableFile::FILE_READ_ERROR
@ FILE_READ_ERROR
Definition: SerializableFile.hpp:30
Fw::SerializableFile::FILE_OPEN_ERROR
@ FILE_OPEN_ERROR
Definition: SerializableFile.hpp:28
Fw
Definition: Buffer.cpp:21