Version: 9.16.0
DF_ChildIterator.hxx
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// This library is free software; you can redistribute it and/or
4// modify it under the terms of the GNU Lesser General Public
5// License as published by the Free Software Foundation; either
6// version 2.1 of the License, or (at your option) any later version.
7//
8// This library is distributed in the hope that it will be useful,
9// but WITHOUT ANY WARRANTY; without even the implied warranty of
10// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11// Lesser General Public License for more details.
12//
13// You should have received a copy of the GNU Lesser General Public
14// License along with this library; if not, write to the Free Software
15// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16//
17// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18//
19
20#ifndef DFCHILDITERATOR_HXX
21#define DFCHILDITERATOR_HXX
22
23#include "DF_definitions.hxx"
24#include "DF_Label.hxx"
25
26#include <string>
27
28//Class DF_ChildIterator is used to iterate a tree of Labels in the Document
30public:
31 //Constructor
32 Standard_EXPORT DF_ChildIterator(const DF_Label& theLabel, bool allLevels = false);
33
35
37
38 //Initializes the iterator, if allLevels is true the iterator before iterating the next
39 //brother of the current Label iterates the Label children
40 Standard_EXPORT void Init(const DF_Label& theLabel, bool allLevels = false);
41
42 //Returns a current Label
44
45 //Returns true if there is a current Label
46 Standard_EXPORT bool More();
47
48 //Moves to the next Label
49 Standard_EXPORT void Next();
50
51private:
55};
56
57#endif
#define Standard_EXPORT
Definition: DF_definitions.hxx:53
Definition: DF_ChildIterator.hxx:29
bool More()
Definition: DF_ChildIterator.cxx:55
DF_Label Value()
Definition: DF_ChildIterator.cxx:49
bool _allLevels
Definition: DF_ChildIterator.hxx:54
DF_ChildIterator()
Definition: DF_ChildIterator.cxx:29
void Init(const DF_Label &theLabel, bool allLevels=false)
Definition: DF_ChildIterator.cxx:41
DF_LabelNode * _root
Definition: DF_ChildIterator.hxx:52
DF_LabelNode * _current
Definition: DF_ChildIterator.hxx:53
~DF_ChildIterator()
Definition: DF_ChildIterator.cxx:34
void Next()
Definition: DF_ChildIterator.cxx:61
Definition: DF_Label.hxx:34
Definition: DF_Label.hxx:65