Salome HOME
BugID: IPAL9392, modified methods GetRowUnits.
[modules/kernel.git] / src / SALOMEDSClient / SALOMEDSClient_Study.hxx
1 //  File   : SALOMEDSClient_Study.hxx
2 //  Author : Sergey RUIN
3 //  Module : SALOME
4
5 #ifndef __SALOMEDSClient_STUDY_H__
6 #define __SALOMEDSClient_STUDY_H__
7
8 #include <vector>
9 #include <string>
10
11 #include "SALOMEDSClient_definitions.hxx"
12 #include "SALOMEDSClient_SComponentIterator.hxx"
13 #include "SALOMEDSClient_StudyBuilder.hxx"
14 #include "SALOMEDSClient_SObject.hxx"
15 #include "SALOMEDSClient_SComponent.hxx"
16 #include "SALOMEDSClient_UseCaseBuilder.hxx"
17 #include "SALOMEDSClient_AttributeStudyProperties.hxx"
18 #include "SALOMEDSClient_ChildIterator.hxx"
19
20 class SALOMEDSClient_Study
21 {
22
23 public:
24   virtual ~SALOMEDSClient_Study() {}
25
26   virtual std::string GetPersistentReference() = 0;
27   virtual std::string GetTransientReference() = 0;
28   virtual bool IsEmpty() = 0;
29   virtual _PTR(SComponent) FindComponent (const std::string& aComponentName) = 0;
30   virtual _PTR(SComponent) FindComponentID(const std::string& aComponentID) = 0;
31   virtual _PTR(SObject) FindObject(const std::string& anObjectName) = 0;
32   virtual std::vector<_PTR(SObject)> FindObjectByName( const std::string& anObjectName, const std::string& aComponentName ) = 0;  
33   virtual _PTR(SObject) FindObjectID(const std::string& anObjectID) = 0;
34   virtual _PTR(SObject) CreateObjectID(const std::string& anObjectID) = 0;
35   virtual _PTR(SObject) FindObjectIOR(const std::string& anObjectIOR) = 0;
36   virtual _PTR(SObject) FindObjectByPath(const std::string& thePath) = 0;
37   virtual std::string GetObjectPath(const _PTR(SObject)& theSO) = 0;
38   virtual void SetContext(const std::string& thePath) = 0;
39   virtual std::string GetContext() = 0;  
40   virtual std::vector<std::string> GetObjectNames(const std::string& theContext) = 0;
41   virtual std::vector<std::string> GetDirectoryNames(const std::string& theContext) = 0;
42   virtual std::vector<std::string> GetFileNames(const std::string& theContext) = 0;
43   virtual std::vector<std::string> GetComponentNames(const std::string& theContext) = 0;
44   virtual _PTR(ChildIterator) NewChildIterator(const _PTR(SObject)& theSO) = 0;
45   virtual _PTR(SComponentIterator) NewComponentIterator() = 0;
46   virtual _PTR(StudyBuilder) NewBuilder() = 0;
47   virtual std::string Name() = 0;
48   virtual void  Name(const std::string& name) = 0;
49   virtual bool IsSaved() = 0;
50   virtual void  IsSaved(bool save) = 0;
51   virtual bool IsModified() = 0;
52   virtual std::string URL() = 0;
53   virtual void  URL(const std::string& url) = 0;
54   virtual int StudyId() = 0;
55   virtual void  StudyId(int id) = 0;
56   virtual std::vector<_PTR(SObject)> FindDependances(const _PTR(SObject)& theSO) = 0;
57   virtual _PTR(AttributeStudyProperties) GetProperties() = 0;
58   virtual std::string GetLastModificationDate() = 0;
59   virtual std::vector<std::string> GetModificationsDate() = 0;
60   virtual _PTR(UseCaseBuilder) GetUseCaseBuilder() = 0;
61   virtual void Close() = 0;
62   virtual void EnableUseCaseAutoFilling(bool isEnabled) = 0;
63   virtual bool DumpStudy(const std::string& thePath, const std::string& theBaseName, bool isPublished) = 0; 
64 };
65
66
67 #endif