0022312: Translation of french commentaries in OCCT files
[occt.git] / src / CDF / CDF_Directory.cxx
CommitLineData
7fd59977 1// File: CDF_Directory.cxx
2// Created: Thu Aug 7 17:05:01 1997
3// Author: Jean-Louis Frenkel
4// <rmi@frilox.paris1.matra-dtv.fr>
5
6
7#include <CDF_Directory.ixx>
8#include <CDM_ListIteratorOfListOfDocument.hxx>
9#include <Standard_NoSuchObject.hxx>
10CDF_Directory::CDF_Directory () {}
11
12void CDF_Directory::Add(const Handle(CDM_Document)& aDocument) {
13 if(!Contains(aDocument)) myDocuments.Append(aDocument);
14}
15
16void CDF_Directory::Remove(const Handle(CDM_Document)& aDocument) {
17
18 CDM_ListIteratorOfListOfDocument it(myDocuments);
19
20 Standard_Boolean found = Standard_False;
21 for (; it.More() && !found;) {
22 found = aDocument == it.Value();
23 if(found)
24 myDocuments.Remove(it);
25 else
26 it.Next();
27 }
28}
29
30
31Standard_Boolean CDF_Directory::Contains(const Handle(CDM_Document)& aDocument) const {
32
33 CDM_ListIteratorOfListOfDocument it(myDocuments);
34 Standard_Boolean found = Standard_False;
35 for (; it.More() && !found; it.Next()) {
36 found = aDocument == it.Value();
37 }
38 return found;
39}
40
41
42Standard_Integer CDF_Directory::Length() const {
43 return myDocuments.Extent();
44}
45
46const CDM_ListOfDocument& CDF_Directory::List() const {
47
48 return myDocuments;
49
50}
51
52Standard_Boolean CDF_Directory::IsEmpty() const {
53 return myDocuments.IsEmpty();
54}
55Handle(CDM_Document) CDF_Directory::Last() {
56 Standard_NoSuchObject_Raise_if(IsEmpty(),"CDF_Directory::Last: the directory does not contain any document");
57 return myDocuments.Last();
58}