MADARA  3.2.3
Tracker.h File Reference
#include <string>
#include <vector>
#include <map>
#include <list>
#include <type_traits>
#include <initializer_list>
#include "madara/knowledge/KnowledgeRecord.h"
#include "madara/knowledge/Functions.h"
#include "madara/utility/StdInt.h"
#include "madara/MadaraExport.h"
#include "madara/knowledge/VariableReference.h"
#include "madara/knowledge/KnowledgeBase.h"
#include "madara/knowledge/KnowledgeCast.h"
#include "madara/knowledge/ContextGuard.h"
#include "BaseTracker.h"

Go to the source code of this file.

Classes

class  madara::knowledge::rcw::Tracker< T, R, RD, WR, dummy >
 Tracker which puts variable values into a single KnowledgeRecord. More...
 
class  madara::knowledge::rcw::Tracker< T, R, false, false, void >
 If trying to create a tracker that is read-only, and write-only, give error. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, false, true, typename std::enable_if< supports_get_value< T >::value &&supports_knowledge_cast< T >::value &&supports_is_dirty< T >::value &&!supports_indexed_is_dirty< T >::value >::type >
 Tracker specialization for types that track their own modification status and that can only write. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, false, true, typename std::enable_if< supports_get_value< T >::value &&supports_knowledge_cast< T >::value &&supports_self_eq< T >::value &&!supports_is_dirty< T >::value >::type >
 Tracker specialization for types that don't track modification status, and that can only write. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, RD, WR, typename std::enable_if< supports_get_value< T >::value &&supports_indexed_get_value< T >::value &&supports_size< T >::value &&supports_knowledge_cast< T >::value &&supports_is_dirty< T >::value &&supports_is_all_dirty< T >::value &&supports_is_size_dirty< T >::value &&supports_indexed_is_dirty< T >::value >::type >
 Tracker specialization for types that have individual indexed elements, and track their modification status individually. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, RD, WR, typename std::enable_if< supports_indexed_get_value< T >::value &&supports_size< T >::value &&!supports_is_all_dirty< T >::value &&!supports_is_size_dirty< T >::value &&supports_indexed_is_dirty< T >::value >::type >
 Tracker specialization for types with individual elements that each track their own modification status. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, true, false, typename std::enable_if< supports_get_value< T >::value &&supports_knowledge_cast< T >::value >::type >
 Tracker specialization for types that can only read. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, true, true, typename std::enable_if< supports_get_value< T >::value &&supports_knowledge_cast< T >::value &&supports_is_dirty< T >::value &&!supports_indexed_is_dirty< T >::value >::type >
 Tracker specialization for types that track their own modification status and that can both read and write. More...
 
class  madara::knowledge::rcw::Tracker< T, VariableReference, true, true, typename std::enable_if< supports_get_value< T >::value &&supports_knowledge_cast< T >::value &&supports_self_eq< T >::value &&!supports_is_dirty< T >::value >::type >
 Tracker specialization for types that don't track modification status, and that can both read and write. More...
 

Namespaces

 madara
 Copyright (c) 2015 Carnegie Mellon University.
 
 madara::knowledge
 Provides functions and classes for the distributed knowledge base.
 
 madara::knowledge::rcw
 Namespace holding Read-Compute-Write based abstractions for knowledge base access.
 

Detailed Description

Author
David Kyle dskyl.nosp@m.e@se.nosp@m.i.cmu.nosp@m..edu

Implements BaseTracker abstract class used by Transaction, and implemented by Tracker and PrefixTracker

Author
David Kyle dskyl.nosp@m.e@se.nosp@m.i.cmu.nosp@m..edu

Implements Tracker template used by Transaction

Definition in file Tracker.h.