#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.