Salome HOME
This commit was generated by cvs2git to track changes on a CVS vendor
[modules/yacs.git] / src / SALOMEDS / SALOMEDS_UseCaseIterator_i.hxx
1 //  File      : SALOMEDS_UseCaseIterator_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_USECASEITERATOR_I_H__
10 #define __SALOMEDS_USECASEITERATOR_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
19
20
21 // Cascade headers
22 #include <TDF_ChildIterator.hxx>
23 #include <TDataStd_ChildNodeIterator.hxx>
24 #include <TDataStd_TreeNode.hxx>
25 #include <Standard_GUID.hxx>
26 #include <stdio.h>
27
28 class SALOMEDS_UseCaseIterator_i: public POA_SALOMEDS::UseCaseIterator,
29                                 public PortableServer::RefCountServantBase {
30 private:
31   Standard_GUID                 _guid;
32   Standard_Boolean              _levels;
33   CORBA::ORB_ptr                _orb;
34   Handle(TDataStd_TreeNode)     _node;
35   TDataStd_ChildNodeIterator    _it;
36
37 public:
38
39   //! standard constructor  
40   SALOMEDS_UseCaseIterator_i(const TDF_Label& theLabel, 
41                              const Standard_GUID& theGUID, 
42                              const Standard_Boolean allLevels,
43                              CORBA::ORB_ptr);
44   
45   //! standard destructor
46   ~SALOMEDS_UseCaseIterator_i();
47   
48   virtual void Init(CORBA::Boolean);
49   virtual CORBA::Boolean More();
50   virtual void Next();
51   virtual SALOMEDS::SObject_ptr Value();
52 };
53 #endif