0024023: Revamp the OCCT Handle -- general
[occt.git] / src / TDF / TDF_Label.lxx
1 // Created by: DAUTRY Philippe
2 // Copyright (c) 1997-1999 Matra Datavision
3 // Copyright (c) 1999-2014 OPEN CASCADE SAS
4 //
5 // This file is part of Open CASCADE Technology software library.
6 //
7 // This library is free software; you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License version 2.1 as published
9 // by the Free Software Foundation, with special exception defined in the file
10 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 // distribution for complete text of the license and disclaimer of any warranty.
12 //
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
15
16 //              --------------
17
18 // Version:     0.0
19 //Version Date            Purpose
20 //              0.0     Feb  7 1997     Creation
21
22 #include <TDF_LabelNode.hxx>
23 #include <TDF_TagSource.hxx>
24 #include <TDF_Data.hxx>
25
26 inline TDF_Label::TDF_Label()
27 :myLabelNode(NULL)
28 {}
29
30 inline TDF_Label::TDF_Label(const TDF_LabelNodePtr& aNode)
31 :myLabelNode(aNode)
32 {}
33
34 inline void TDF_Label::Nullify()
35 { myLabelNode = NULL; }
36
37 inline Standard_Boolean TDF_Label::IsRoot() const
38 { return myLabelNode->IsRoot(); }
39
40 inline Standard_Boolean TDF_Label::IsNull() const
41 { return (myLabelNode == NULL); }
42
43 inline Standard_Boolean TDF_Label::IsImported() const
44 { return myLabelNode->IsImported(); }
45
46 inline Standard_Boolean TDF_Label::IsEqual(const TDF_Label& aLabel) const
47 { return (myLabelNode == aLabel.myLabelNode); }
48
49 inline Standard_Boolean TDF_Label::IsDifferent(const TDF_Label& aLabel) const
50 { return (myLabelNode != aLabel.myLabelNode); }
51
52 inline Standard_Integer TDF_Label::Tag() const
53 { return myLabelNode->Tag(); }
54
55 inline const TDF_Label TDF_Label::Father() const
56 { return TDF_Label(myLabelNode->Father()); }
57
58 inline Standard_Boolean TDF_Label::HasChild() const
59 { return (myLabelNode->FirstChild() != NULL); }
60
61 inline Standard_Boolean TDF_Label::AttributesModified() const
62 { return myLabelNode->AttributesModified(); }
63
64 inline Standard_Boolean TDF_Label::MayBeModified() const
65 { return myLabelNode->MayBeModified(); }
66
67 inline Handle(TDF_Data) TDF_Label::Data() const
68 { return myLabelNode->Data(); }
69
70 inline Standard_OStream& operator << (Standard_OStream& anOS,
71                                       const TDF_Label& aLab)
72 { aLab.Dump(anOS); return anOS; }
73
74 inline TDF_Label TDF_Label::NewChild () const
75 { return TDF_TagSource::NewChild(*this); }