- /// Gets the current working black box
- ComplexBlackBoxDescriptor* Current() { return mCurrent.back().box; }
-
- /// Returns true when we are inside a define/endefine block
- // bool InDefinitionBlock() { return (mCurrent.size()>1); }
-
- //==================================================================
- // 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> mCurrent;
-
- /// flag which is true when we are inside a Define/EndDefine block
- // bool mDefineFlag;
-