F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
MapEntryBase.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title MapEntryBase
3 // \author bocchino
4 // \brief An abstract base class representing an entry in a map
5 // ======================================================================
6 
7 #ifndef Fw_MapEntryBase_HPP
8 #define Fw_MapEntryBase_HPP
9 
10 #include "Fw/FPrimeBasicTypes.hpp"
11 
12 namespace Fw {
13 
14 template <typename K, typename V>
15 class MapEntryBase {
16  private:
17  // ----------------------------------------------------------------------
18  // Deleted elements
19  // ----------------------------------------------------------------------
20 
23  MapEntryBase(const MapEntryBase<K, V>&) = delete;
24 
28  MapEntryBase<K, V>& operator=(const MapEntryBase<K, V>&) = delete;
29 
30  protected:
31  // ----------------------------------------------------------------------
32  // Protected constructors and destructors
33  // ----------------------------------------------------------------------
34 
36  MapEntryBase() = default;
37 
39  virtual ~MapEntryBase() = default;
40 
41  public:
42  // ----------------------------------------------------------------------
43  // Public member functions
44  // ----------------------------------------------------------------------
45 
48  virtual const K& getKey() const = 0;
49 
52  virtual const V& getValue() const = 0;
53 };
54 
55 } // namespace Fw
56 
57 #endif
virtual const V & getValue() const =0
virtual ~MapEntryBase()=default
Destructor.
virtual const K & getKey() const =0
MapEntryBase()=default
Zero-argument constructor.