2 #ifndef _MADARA_CONTAINERS_STRING_VECTOR_H_
3 #define _MADARA_CONTAINERS_STRING_VECTOR_H_
7 #include "madara/LockType.h"
56 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 StringVector& other,
bool refresh_keys =
true,
bool delete_keys =
true);
139 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;
237 int set(
size_t index,
const type& value);
258 int set(
const std::vector<type>& value);
278 void set_quality(
size_t index, uint32_t quality,
310 bool is_true(
void)
const;
316 bool is_false(
void)
const;
323 virtual bool is_true_(
void)
const;
329 virtual bool is_false_(
void)
const;
339 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 strings inside of KaRL.
std::string type
trait that describes the value type
std::vector< VariableReference > vector_
Values of the array.
std::string delimiter_
Delimiter for the prefix to subvars.
knowledge::KnowledgeRecord to_record(void) const
Retrieves the entire vector as a native double array in a record.
ThreadSafeContext * context_
Variable context that we are modifying.
VariableReference size_
Reference to the size field of the vector space.
Provides container classes for fast knowledge base access and mutation.
StringVector StringArray
provide the Array alias for the StringVector class
Provides functions and classes for the distributed knowledge base.
::std::vector< KnowledgeRecord > KnowledgeVector
::std::vector< std::string > StringVector
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.