SOLA
Loading...
Searching...
No Matches
Public Member Functions | List of all members
minhton::DistributedData Class Reference
Inheritance diagram for minhton::DistributedData:
minhton::NodeData

Public Member Functions

 DistributedData (const PhysicalNodeInfo &p_node_info)
 
void setPhysicalNodeInfo (const PhysicalNodeInfo &p_node_info)
 
PhysicalNodeInfo getPhysicalNodeInfo () const
 
bool insert (Key key, NodeData::ValueTimestampAndType value_timestamp_and_type) override
 
bool update (Key key, NodeData::ValueTimestampAndType value_timestamp_and_type) override
 
void remove (Key key) override
 
void addSubscriptionOrderKey (NodeData::Key key)
 
void removeSubscriptionOrderKey (NodeData::Key key)
 
std::vector< NodeData::Key > getSubscriptionOrderKeys () const
 
std::queue< uint64_t > getUpdateTimestamps (const NodeData::Key &key)
 
bool isKeySubscribed (NodeData::Key key)
 
bool isValueUpToDate (const NodeData::Key &key, uint64_t validity_threshold_timestamp) override
 
uint8_t getTimestampStorageLimit () const
 
bool isLocal () const override
 
- Public Member Functions inherited from minhton::NodeData
bool hasKey (const Key &key)
 
Value getValue (Key key)
 
ValueAndTimestamp getValueAndTimestamp (Key key)
 
ValueTimestampAndType getValueTimestampAndType (Key key)
 
std::unordered_map< Key, ValueTimestampAndType > getData () const
 
std::vector< Key > getAllCurrentKeys ()
 
 SERIALIZE (data_)
 

Additional Inherited Members

- Public Types inherited from minhton::NodeData
enum  ValueType : uint8_t { kValueDynamic = 0 , kValueStatic = 1 }
 
using Key = std::string
 
using Value = std::variant< int, float, bool, std::string >
 
using ValueAndTimestamp = std::tuple< Value, uint64_t >
 
using ValueTimestampAndType = std::tuple< Value, uint64_t, ValueType >
 
using ValueAndType = std::tuple< Value, ValueType >
 
using Attributes = std::vector< std::tuple< NodeData::Key, NodeData::Value > >
 
using NodesWithAttributes = std::unordered_map< NodeInfo, Attributes, NodeInfoHasher >
 
using AttributesAndTypes = std::vector< std::tuple< NodeData::Key, NodeData::Value, NodeData::ValueType > >
 
using NodesWithAttributesAndTypes = std::unordered_map< NodeInfo, AttributesAndTypes, NodeInfoHasher >
 

Member Function Documentation

◆ insert()

bool minhton::DistributedData::insert ( NodeData::Key  key,
NodeData::ValueTimestampAndType  value_timestamp_and_type 
)
overridevirtual

Reimplemented from minhton::NodeData.

◆ isLocal()

bool minhton::DistributedData::isLocal ( ) const
overridevirtual

Implements minhton::NodeData.

◆ isValueUpToDate()

bool minhton::DistributedData::isValueUpToDate ( const NodeData::Key &  key,
uint64_t  validity_threshold_timestamp 
)
overridevirtual

Reimplemented from minhton::NodeData.

◆ remove()

void minhton::DistributedData::remove ( NodeData::Key  key)
overridevirtual

Reimplemented from minhton::NodeData.

◆ update()

bool minhton::DistributedData::update ( NodeData::Key  key,
NodeData::ValueTimestampAndType  value_timestamp_and_type 
)
overridevirtual

Reimplemented from minhton::NodeData.


The documentation for this class was generated from the following files: