- /// Gets the current working black box
- virtual ComplexBlackBoxDescriptor* Current() = 0;
-
- /// Returns true when we are inside a define/endefine block
- // virtual bool InDefinitionBlock() = 0;
-
- //==================================================================
- // ATTRIBUTES
-
- /// The factory used
- // Factory* mFactory;
-
- /// The Root Package
- Package* mPackage;
-
- /// The root ComplexBlackBox, in which operations are done when outside a define/endefine block
- /// Its name in bbi is 'workspace'
- ComplexBlackBoxDescriptor* mRoot;
-
- /// Struct that stores info on user defined complex black boxes
- struct CBBDefinition
- {
- ComplexBlackBoxDescriptor* box;
- std::string package;
- CBBDefinition(ComplexBlackBoxDescriptor* d, const std::string& p )
- : box(d), package(p) {}
- };
-
- /// The stack of current working ComplexBlackBox
- /// (is a stack for nested definitions)
- /// only contains the root when outside a define/endefine block
- std::deque<CBBDefinition> mOpenDefinition;
-
- /// The stack of current working package
- /// (is a stack for nested definitions)
- std::deque<Package*> mOpenPackage;
-
- /// flag which is true when we are inside a Define/EndDefine block
- // bool mDefineFlag;
-
- /// The input values of the Root ComplexBlackBox
- std::map<std::string,std::string> mInputs;
-
- /// no exec mode flag
- bool mNoExecMode;