37 create(newLogicElement);
38 newLogicElement->setType(inType);
40 newLogicElement->setName(inLogicValue->getName());
42 if(inParentLogicElement) {
43 inParentLogicElement->addChildLogicElement(newLogicElement);
45 return newLogicElement;
69 std::vector<LogicElementSharedPtr>::const_iterator entry = inSource.begin();
70 std::vector<LogicElementSharedPtr>::const_iterator end = inSource.end();
71 for(; entry != end; ++entry) {
87 if(!inChildLogicElement) {
126 std::vector<LogicElementSharedPtr> outLogicElements;
129 std::vector<LogicElementSharedPtr>::iterator logicElemIt = outLogicElements.begin();
135 if(!outLogicElements.empty()) {
136 size += (*logicElemIt)->getSize();
144 if(!outLogicElements.empty()) {
145 size += (*logicElemIt)->getSize();
153 if(!outLogicElements.empty()) {
154 pSize += (*logicElemIt)->getSize();
159 if(!outLogicElements.empty()) {
160 for(; logicElemIt != outLogicElements.end(); logicElemIt++) {
161 cSize += (*logicElemIt)->getSize();
165 size = pSize + cSize;
boost::shared_ptr< LogicValue > LogicValueSharedPtr
RelationType mRelationType
boost::shared_ptr< LogicElement > LogicElementSharedPtr
virtual void accept(BaseVisitor &visitor)
Receive a visitor to this class. The visit method of the visitor is called and a reference to this ob...
void setRelationType(const RelationType &inSource)
void setChildren(const std::vector< LogicElementSharedPtr > &inSource)
const RelationType getRelationType() const
This class is used within simulationInfo construct to define a logic value to use for modeling in the...
void runVisitor(_Tp &inoutVisited, BaseVisitor &inoutVisitor)
The Error object thrown by different methods of EdifOM.
bool addChildLogicElement(const LogicElementSharedPtr &inChildLogicElement)
A base class for Visitor.
void setType(const Type &inSource)
void saveContextData(const std::string &inName, const boost::any &inSource)
void getChildren(std::vector< LogicElementSharedPtr > &outLogicElements) const
std::vector< LogicElementSharedPtr > mChildren
virtual LogicElementSharedPtr newLogicElementPtr(const LogicElement::Type &inType, const LogicValueSharedPtr &inLogicValue=LogicValueSharedPtr(), const LogicElementSharedPtr &inParentLogicElement=LogicElementSharedPtr())
const Type getType() const
void setCurrentLocation(const std::string &inFunction, const std::string &inFile, uint32_t inLine)