1 // SALOME SALOMEDS : data structure of SALOME and sources of Salome data server
3 // Copyright (C) 2003 CEA/DEN, EDF R&D
7 // File : SALOMEDS_UseCaseBuilder_i.hxx
8 // Author : Yves FRICAUD
11 #ifndef __SALOMEDS_USECaseBuilder_I_H__
12 #define __SALOMEDS_USECaseBuilder_I_H__
18 #include <SALOMEconfig.h>
19 #include CORBA_SERVER_HEADER(SALOMEDS)
20 #include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
23 #include <TDataStd_TreeNode.hxx>
24 #include <TDocStd_Document.hxx>
25 #include <Standard_GUID.hxx>
28 class SALOMEDS_UseCaseBuilder_i: public POA_SALOMEDS::UseCaseBuilder,
29 public PortableServer::RefCountServantBase {
33 Handle(TDataStd_TreeNode) _root;
34 Handle(TDocStd_Document) _doc;
38 //! standard constructor
39 SALOMEDS_UseCaseBuilder_i(const Handle(TDocStd_Document)& theDocument,
42 //! standard destructor
43 ~SALOMEDS_UseCaseBuilder_i();
45 virtual CORBA::Boolean Append(SALOMEDS::SObject_ptr theObject);
47 virtual CORBA::Boolean Remove(SALOMEDS::SObject_ptr theObject);
49 virtual CORBA::Boolean AppendTo(SALOMEDS::SObject_ptr theFather, SALOMEDS::SObject_ptr theObject);
51 virtual CORBA::Boolean InsertBefore(SALOMEDS::SObject_ptr theFirst, SALOMEDS::SObject_ptr theNext);
53 virtual CORBA::Boolean SetCurrentObject(SALOMEDS::SObject_ptr theObject);
55 virtual CORBA::Boolean SetRootCurrent();
57 virtual CORBA::Boolean HasChildren(SALOMEDS::SObject_ptr theObject);
59 virtual CORBA::Boolean IsUseCase(SALOMEDS::SObject_ptr theObject);
61 virtual CORBA::Boolean SetName(const char* theName);
63 virtual SALOMEDS::SObject_ptr GetCurrentObject();
65 virtual char* GetName();
67 virtual SALOMEDS::SObject_ptr AddUseCase(const char* theName);
69 virtual SALOMEDS::UseCaseIterator_ptr GetUseCaseIterator(SALOMEDS::SObject_ptr anObject);