2 #ifndef _MADARA_CONTAINERS_INTEGER_VECTOR_H_
3 #define _MADARA_CONTAINERS_INTEGER_VECTOR_H_
7 #include "madara/LockType.h"
56 int size = -1,
bool delete_vars =
true,
70 bool delete_vars =
true,
95 void modify(
size_t index);
108 void push_back(
type value);
116 void resize(
int size = -1,
bool delete_vars =
true);
127 IntegerVector& other,
bool refresh_keys =
true,
bool delete_keys =
true);
145 void copy_to(std::vector<type>& target)
const;
152 size_t size(
void)
const;
205 type operator[](
size_t index)
const;
227 bool exists(
size_t index)
const;
235 type inc(
size_t index);
245 int set(
size_t index,
267 int set(
const std::vector<type>& value);
287 void set_quality(
size_t index, uint32_t quality,
319 bool is_true(
void)
const;
325 bool is_false(
void)
const;
332 virtual bool is_true_(
void)
const;
338 virtual bool is_false_(
void)
const;
348 virtual void modify_(
void);
This class provides a distributed knowledge base to users.
This class encapsulates an entry in a KnowledgeBase.
Settings for applying knowledge updates.
Settings for applying knowledge updates.
This class stores variables and their values for use by any entity needing state information in a thr...
Optimized reference to a variable within the knowledge base.
Provides an interface for external functions into the MADARA KaRL variable settings.
This class is an abstract base class for all containers.
This class stores a vector of integers inside of KaRL.
VariableReference size_
Reference to the size field of the vector space.
knowledge::KnowledgeRecord::Integer type
trait that describes the value type
std::vector< VariableReference > vector_
Values of the array.
std::string delimiter_
Delimiter for the prefix to subvars.
ThreadSafeContext * context_
Variable context that we are modifying.
Provides container classes for fast knowledge base access and mutation.
IntegerVector IntegerArray
provide the Array alias for the IntegerVector class
Provides functions and classes for the distributed knowledge base.
::std::vector< KnowledgeRecord > KnowledgeVector
MADARA_EXPORT bool exists(const char *originator, uint64_t clock, uint32_t update_number, OriginatorFragmentMap &map)
Checks if a fragment already exists within a fragment map.
Copyright(c) 2020 Galois.