Salome HOME
ENV: Windows porting.
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_UseCaseBuilder.hxx
1 //  File   : SALOMEDS_UseCaseBuilder.hxx
2 //  Author : Sergey RUIN
3 //  Module : SALOME
4
5 #ifndef __SALOMEDS_USECaseBuilder_H__
6 #define __SALOMEDS_USECaseBuilder_H__
7
8 #include "SALOMEDSClient.hxx"
9 #include "SALOMEDSImpl_UseCaseBuilder.hxx"
10
11 // IDL headers
12 #include <SALOMEconfig.h>
13 #include CORBA_SERVER_HEADER(SALOMEDS)
14
15 class SALOMEDS_UseCaseBuilder: public SALOMEDSClient_UseCaseBuilder
16 {
17
18 private: 
19   bool _isLocal;
20   Handle(SALOMEDSImpl_UseCaseBuilder) _local_impl;
21   SALOMEDS::UseCaseBuilder_var        _corba_impl;
22
23 public:
24   
25   SALOMEDS_UseCaseBuilder(const Handle(SALOMEDSImpl_UseCaseBuilder)& theBuilder);
26   SALOMEDS_UseCaseBuilder(SALOMEDS::UseCaseBuilder_ptr theBuilder);
27   ~SALOMEDS_UseCaseBuilder();
28
29   virtual bool Append(const _PTR(SObject)& theObject);
30   virtual bool Remove(const _PTR(SObject)& theObject);
31   virtual bool AppendTo(const _PTR(SObject)& theFather, _PTR(SObject) theObject);
32   virtual bool InsertBefore(const _PTR(SObject)& theFirst, _PTR(SObject) theNext);
33   virtual bool  SetCurrentObject(const _PTR(SObject)& theObject);
34   virtual bool SetRootCurrent();
35   virtual bool  HasChildren(const _PTR(SObject)& theObject);
36   virtual bool  IsUseCase(const _PTR(SObject)& theObject);
37   virtual bool SetName(const std::string& theName);
38   virtual _PTR(SObject) GetCurrentObject();
39   virtual std::string GetName();
40   virtual _PTR(SObject) AddUseCase(const std::string& theName);
41   virtual _PTR(UseCaseIterator) GetUseCaseIterator(const _PTR(SObject)& anObject);
42
43 };
44 #endif