- CORBA::Boolean
- FindAttribute(SALOMEDS::GenericAttribute_out theAttribute,
- const char* theTypeOfAttribute);
-
- SALOMEDS::GenericAttribute_ptr
- FindOrCreateAttribute(const char* theTypeOfAttribute);
-
- void RemoveAttribute(const char* theTypeOfAttribute);
- void OnRemove();
-
- SALOMEDS_Study_i* GetStudyServant(){ return _study;}
-
- TDF_Label GetLabel(){ return _lab;}
- TDF_Label GetFatherLabel(){ return _lab.Father();}
- TDF_Label GetFatherComponentLabel();
-
- CORBA::ORB_var GetORB() const;
-
- PortableServer::POA_var GetPOA() const;
-
-protected:
- friend class SALOMEDS_GenericAttribute_i;
-
- typedef std::string TAttributeID;
- typedef std::pair<SALOMEDS_GenericAttribute_i*,SALOMEDS::GenericAttribute_var> TAttrHolder;
- typedef std::map<TAttributeID,TAttrHolder> TAttrMap;
- TAttrMap myAttrMap;
-
- TAttrHolder
- _FindGenAttribute(const Handle(TDF_Attribute)& theAttr);
-
- TAttrHolder
- _CreateGenAttribute(const Handle(TDF_Attribute)& theAttr,
- const char* theTypeOfAttribute);
-
- TAttrHolder
- _FindGenAttribute(const char* theTypeOfAttribute);
-
- Handle(TDF_Attribute)
- _AddAttribute(const char* theTypeOfAttribute);
-
- SALOMEDS_Study_i* _study;
- std::string _name;
- TDF_Label _lab;
-
- SALOMEDS_SObject_i(SALOMEDS_Study_i* theStudy,
- const TDF_Label& theLabel);
-
- ~SALOMEDS_SObject_i();
-
-private:
- SALOMEDS_SObject_i(); // Not implemented
- void operator=(const SALOMEDS_SObject_i&); // Not implemented