2 #ifndef _MADARA_EXTERNAL_FUNCTION_VARIABLES_H_ 3 #define _MADARA_EXTERNAL_FUNCTION_VARIABLES_H_ 6 #include "madara/MADARA_export.h" 15 #ifdef _MADARA_PYTHON_CALLBACKS_ 16 #include "boost/python/object.hpp" 21 #include "madara_jni.h" 36 class CompositeFunctionNode;
41 class ThreadSafeContext;
127 false,
true,
false,
false));
140 false,
true,
false,
false));
155 false,
true,
false,
false));
170 false,
true,
false,
false));
180 const std::vector <KnowledgeRecord::Integer> & value,
183 false,
true,
false,
false));
193 const std::vector <KnowledgeRecord::Integer> & value,
196 false,
true,
false,
false));
208 false,
true,
false,
false));
220 false,
true,
false,
false));
231 const double * value,
235 false,
true,
false,
false));
246 const double * value,
250 false,
true,
false,
false));
260 const std::vector <double> & value,
263 false,
true,
false,
false));
273 const std::vector <double> & value,
276 false,
true,
false,
false));
288 false,
true,
false,
false));
300 false,
true,
false,
false));
313 false,
true,
false,
false));
326 false,
true,
false,
false));
337 false,
true,
false,
false));
348 false,
true,
false,
false));
359 false,
true,
false,
false));
370 false,
true,
false,
false));
397 const std::string & key_val_delimiter =
"=")
const;
403 void print (
unsigned int level = 0)
const;
411 void print (
const std::string & statement,
unsigned int level = 0)
const;
452 void apply_modified (
478 #ifndef _MADARA_NO_KARL_ 553 void define_function (
const std::string & name, jobject callable);
556 #ifdef _MADARA_PYTHON_CALLBACKS_ 562 void define_function (
const std::string & name, boost::python::object callable);
581 #endif // _MADARA_NO_KARL_ 600 std::vector <KnowledgeRecord> & target);
625 std::map <std::string, knowledge::KnowledgeRecord> & target);
632 int64_t save_as_karl (
const std::string & filename)
const;
639 int64_t save_context (
const std::string & filename);
648 int64_t save_checkpoint (
const std::string & filename,
649 bool reset_modifieds =
true);
657 int64_t load_context (
const std::string & filename,
This class encapsulates an entry in a KnowledgeBase.
ThreadSafeContext * context_
Context used by this filter.
This class stores variables and their values for use by any entity needing state information in a thr...
A composite node that calls a function.
Optimized reference to a variable within the knowledge base.
Compiled, optimized KaRL logic.
Provides map of data types to a filter chain to apply to the data.
std::vector< KnowledgeRecord > FunctionArguments
MADARA_Export ssize_t write_file(const std::string &filename, void *buffer, size_t size)
Writes a file with provided contents.
ThreadSafeContext * context_
Variables context that is directly used by the KaRL engine.
madara::knowledge::KnowledgeRecord VALUE_TYPE
std::vector< VariableReference > VariableReferences
a vector of variable references
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.
Provides functions and classes for the distributed knowledge base.
void operator=(const KnowledgeRecordFilters &rhs)
Assignment operator.
Settings for applying knowledge updates.
Copyright (c) 2015 Carnegie Mellon University.
Settings for applying knowledge updates.
Provides an interface for external functions into the MADARA KaRL variable settings.
Variables(const Variables &rhs)
Constructor.