32#include <unordered_map>
34#include <pdi/pdi_fwd.h>
35#include <pdi/callbacks.h>
36#include <pdi/data_descriptor.h>
37#include <pdi/datatype_template.h>
38#include <pdi/logger.h>
39#include <pdi/ref_any.h>
52 std::unordered_map<std::string, std::unique_ptr<Data_descriptor>>::iterator m_data;
53 Iterator(
const std::unordered_map<std::string, std::unique_ptr<Data_descriptor>>::iterator& data);
54 Iterator(std::unordered_map<std::string, std::unique_ptr<Data_descriptor>>::iterator&& data);
69 Iterator get_iterator(
const std::unordered_map<std::string, std::unique_ptr<Data_descriptor>>::iterator& data);
110 virtual void event(
const char* name) = 0;
Definition callbacks.h:39
An iterator used to go through the descriptor store.
Definition context.h:49
Data_descriptor * operator->()
virtual Data_descriptor & desc(const char *name)=0
Accesses the descriptor for a specific name.
Iterator get_iterator(std::unordered_map< std::string, std::unique_ptr< Data_descriptor > >::iterator &&data)
virtual Iterator find(const std::string &name)=0
Find the Data_descriptor corresponding to a given name.
virtual Data_descriptor & desc(const std::string &name)=0
Accesses the descriptor for a specific name.
virtual Datatype_template_sptr datatype(PC_tree_t node)=0
Creates a new datatype template from a paraconf-style config.
Iterator get_iterator(const std::unordered_map< std::string, std::unique_ptr< Data_descriptor > >::iterator &data)
virtual void add_datatype(const std::string &name, Datatype_template_parser parser)=0
Adds new datatype parser to the context.
virtual Logger & logger()=0
Logger getter.
std::function< Datatype_template_sptr(Context &, PC_tree_t)> Datatype_template_parser
A function that parses a PC_tree_t to create a datatype_template.
Definition context.h:66
virtual Iterator end()=0
Returns an iterator past the last descriptor.
virtual void finalize_and_exit()=0
Finalizes PDI and exits application.
virtual Iterator begin()=0
Returns an iterator on the first descriptor.
virtual void event(const char *name)=0
Triggers a PDI "event".
virtual Callbacks & callbacks()=0
Callbacks of the context.
Definition data_descriptor.h:39
Wrapper for spdlog::logger with additional pattern getter method.
Definition logger.h:42
Definition array_datatype.h:38
std::shared_ptr< const Datatype_template > Datatype_template_sptr
Definition pdi_fwd.h:77