Salome HOME
NRI : Temporary modification for reading catalog of modules.
[modules/kernel.git] / src / SALOMEDS / SALOMEDS_UseCaseBuilder_i.hxx
1 //  File      : SALOMEDS_UseCaseBuilder_i.hxx
2 //  Created   : Mon Oct 7 16:20:12 2002
3 //  Author    : Yves FRICAUD
4
5 //  Project   : SALOME
6 //  Module    : SALOMEDS
7 //  Copyright : Open CASCADE 2002
8
9 #ifndef __SALOMEDS_USECaseBuilder_I_H__
10 #define __SALOMEDS_USECaseBuilder_I_H__
11
12 // std C++ headers
13 #include <iostream.h>
14
15 // IDL headers
16 #include <SALOMEconfig.h>
17 #include CORBA_SERVER_HEADER(SALOMEDS)
18 #include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
19
20 // Cascade headers
21 #include <TDataStd_TreeNode.hxx>
22 #include <TDocStd_Document.hxx>
23 #include <Standard_GUID.hxx>
24 #include <stdio.h>
25
26 class SALOMEDS_UseCaseBuilder_i: public POA_SALOMEDS::UseCaseBuilder,
27                                 public PortableServer::RefCountServantBase {
28 private:
29
30   CORBA::ORB_ptr                _orb;
31   Handle(TDataStd_TreeNode)     _root;
32   Handle(TDocStd_Document)      _doc;
33
34 public:
35
36   //! standard constructor  
37   SALOMEDS_UseCaseBuilder_i(const Handle(TDocStd_Document)& theDocument,
38                             CORBA::ORB_ptr);
39   
40   //! standard destructor
41   ~SALOMEDS_UseCaseBuilder_i();
42   
43   virtual CORBA::Boolean Append(SALOMEDS::SObject_ptr theObject);
44
45   virtual CORBA::Boolean Remove(SALOMEDS::SObject_ptr theObject);
46
47   virtual CORBA::Boolean AppendTo(SALOMEDS::SObject_ptr theFather, SALOMEDS::SObject_ptr theObject);
48
49   virtual CORBA::Boolean InsertBefore(SALOMEDS::SObject_ptr theFirst, SALOMEDS::SObject_ptr theNext);
50
51   virtual CORBA::Boolean  SetCurrentObject(SALOMEDS::SObject_ptr theObject);
52   
53   virtual CORBA::Boolean SetRootCurrent();
54
55   virtual CORBA::Boolean  HasChildren(SALOMEDS::SObject_ptr theObject);
56
57   virtual CORBA::Boolean  IsUseCase(SALOMEDS::SObject_ptr theObject);
58
59   virtual CORBA::Boolean SetName(const char* theName);
60
61   virtual SALOMEDS::SObject_ptr GetCurrentObject();
62
63   virtual char* GetName();
64
65   virtual SALOMEDS::SObject_ptr AddUseCase(const char* theName);
66
67   virtual SALOMEDS::UseCaseIterator_ptr GetUseCaseIterator(SALOMEDS::SObject_ptr anObject);
68
69 };
70 #endif