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	Mar 11 1997	Creation
21
22#include <TDF_Label.hxx>
23#include <TDF_Attribute.hxx>
24
25// IsEmpty
26//=========
27inline Standard_Boolean TDF_DataSet::IsEmpty() const
28{ return (myLabelMap.IsEmpty() && myAttributeMap.IsEmpty()); }
29
30// Labels
31//========
32inline void TDF_DataSet::AddLabel(const TDF_Label& aLabel)
33{ if (!aLabel.IsNull()) myLabelMap.Add(aLabel); }
34
35inline Standard_Boolean TDF_DataSet::ContainsLabel
36(const TDF_Label& aLabel) const
37{ return myLabelMap.Contains(aLabel); }
38
39inline TDF_LabelMap& TDF_DataSet::Labels()
40{ return myLabelMap; }
41
42// Attributes
43//============
44
45inline void TDF_DataSet::AddAttribute(const Handle(TDF_Attribute)& anAttribute)
46{ if (!anAttribute.IsNull()) myAttributeMap.Add(anAttribute); }
47
48inline Standard_Boolean TDF_DataSet::ContainsAttribute
49(const Handle(TDF_Attribute)& anAttribute) const
50{ return myAttributeMap.Contains(anAttribute); }
51
52inline TDF_AttributeMap& TDF_DataSet::Attributes()
53{ return myAttributeMap; }
54
55// Root labels
56//=============
57
58inline void TDF_DataSet::AddRoot(const TDF_Label& aLabel)
59{ if (ContainsLabel(aLabel)) myRootLabels.Append(aLabel); }
60
61inline TDF_LabelList& TDF_DataSet::Roots()
62{ return myRootLabels; }
63