#include <deque>
#include <map>
#include <sstream>
#include <vector>
#include <iostream>
#include "Container.h"
Go to the source code of this file.
Classes | |
class | bt_constructor::BTConstructor |
class | bt_constructor::Element |
class | bt_constructor::Node |
class | bt_constructor::Tree |
Namespaces | |
namespace | bt_constructor |
Defines | |
#define | DEF_STACK_MAP(TYPE, MNAME, NAME) |
#define | DEF_STACK_VECTOR(TYPE, VNAME, NAME) |
#define | FOREACH_MAP(TYPE, VEC) for(std::map<std::string, TYPE>::const_iterator i=o.VEC.begin();i!=o.VEC.end();i++) |
#define | FOREACH_VEC(TYPE, VEC) for(std::vector<TYPE>::const_iterator i=o.VEC.begin();i!=o.VEC.end();i++) |
Functions | |
void | bt_constructor::map_ids (const Node &o) |
void | bt_constructor::map_ids (const Tree &o) |
void | bt_constructor::map_ids (const BTConstructor &o) |
std::ostream & | bt_constructor::operator<< (std::ostream &out, const Node &o) |
std::ostream & | bt_constructor::operator<< (std::ostream &out, const Tree &o) |
std::ostream & | bt_constructor::operator<< (std::ostream &out, const BTConstructor &o) |
bool | bt_constructor::print_call_node (std::ostream &out, const Node &o) |
std::ostream & | bt_constructor::saveDot (std::ostream &out, const Node &o) |
std::ostream & | bt_constructor::saveDot (std::ostream &out, const Tree &o) |
std::ostream & | bt_constructor::saveDot (std::ostream &out, const BTConstructor &o) |
void | bt_constructor::saveDot (std::string prefix, const BTConstructor &o) |
bool | bt_constructor::saveDot_call_node (std::ostream &out, const Node &o) |
std::ostream & | bt_constructor::saveXml (std::ostream &out, const Node &o) |
std::ostream & | bt_constructor::saveXml (std::ostream &out, const Tree &o) |
std::ostream & | bt_constructor::saveXml (std::ostream &out, const BTConstructor &o) |
void | bt_constructor::saveXml (std::string path_prefix, const BTConstructor &o) |
bool | bt_constructor::saveXml_call_node (std::ostream &out, const Node &o) |
std::deque< Node > & | bt_constructor::stack_node (Node *_this) |
#define DEF_STACK_MAP | ( | TYPE, | |
MNAME, | |||
NAME | |||
) |
std::map<std::string, TYPE> MNAME;\ std::deque<TYPE> stack_##NAME;\ void create_##NAME(){\ TYPE t; t.lib=lib;\ stack_##NAME.push_back(t);\ }\ void drop_##NAME(){\ stack_##NAME.pop_back();\ }\ void add_##NAME(){\ MNAME[NAME().name] = NAME();\ drop_##NAME();\ }\ TYPE& NAME(){ return stack_##NAME.back(); }
Definition at line 21 of file BTConstructor.h.
#define DEF_STACK_VECTOR | ( | TYPE, | |
VNAME, | |||
NAME | |||
) |
std::vector<TYPE> VNAME;\ std::deque<TYPE> stack_##NAME;\ void create_##NAME(){\ TYPE t; t.lib=lib;\ stack_##NAME.push_back(t);\ }\ void drop_##NAME(){\ stack_##NAME.pop_back();\ }\ void add_##NAME(){\ VNAME.push_back( NAME() );\ drop_##NAME();\ }\ TYPE& NAME(){ return stack_##NAME.back(); }
Definition at line 37 of file BTConstructor.h.
#define FOREACH_MAP | ( | TYPE, | |
VEC | |||
) | for(std::map<std::string, TYPE>::const_iterator i=o.VEC.begin();i!=o.VEC.end();i++) |
Definition at line 185 of file BTConstructor.h.
#define FOREACH_VEC | ( | TYPE, | |
VEC | |||
) | for(std::vector<TYPE>::const_iterator i=o.VEC.begin();i!=o.VEC.end();i++) |
Definition at line 184 of file BTConstructor.h.