0030686: Visualization, SelectMgr_ViewerSelector - sorting issues of transformation...
[occt.git] / src / TDF / TDF.cxx
CommitLineData
b311480e 1// Created by: DAUTRY Philippe
2// Copyright (c) 1997-1999 Matra Datavision
973c2be1 3// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 4//
973c2be1 5// This file is part of Open CASCADE Technology software library.
b311480e 6//
d5f74e42 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
973c2be1 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.
b311480e 12//
973c2be1 13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
b311480e 15
7fd59977 16// -------
7fd59977 17// Version: 0.0
b311480e 18//Version Date Purpose
7fd59977 19// 0.0 Nov 14 1997 Creation
20
42cf5bc1 21#include <Standard_GUID.hxx>
22#include <TCollection_ExtendedString.hxx>
23#include <TDF.hxx>
7fd59977 24#include <TDF_GUIDProgIDMap.hxx>
25
26static TDF_GUIDProgIDMap guidprogidmap;
27
28//=======================================================================
29//function : LowerID
30//purpose :
31//=======================================================================
32
33const Standard_GUID& TDF::LowestID()
34{
35 static Standard_GUID lowestID("00000000-0000-0000-0000-000000000000");
36 return lowestID;
37}
38
39
40//=======================================================================
41//function : UpperID
42//purpose :
43//=======================================================================
44
45const Standard_GUID& TDF::UppestID()
46{
47 static Standard_GUID uppestID("ffffffff-ffff-ffff-ffff-ffffffffffff");
48 return uppestID;
49}
50
51//=======================================================================
52//function : AddLinkGUIDToProgID
53//purpose :
54//=======================================================================
55void TDF::AddLinkGUIDToProgID(const Standard_GUID& ID,const TCollection_ExtendedString& ProgID)
56{
57 guidprogidmap.UnBind1( ID );
58 guidprogidmap.UnBind2( ProgID );
59
60 guidprogidmap.Bind(ID, ProgID);
61}
62
63//=======================================================================
64//function : GUIDFromProgID
65//purpose :
66//=======================================================================
67Standard_Boolean TDF::GUIDFromProgID(const TCollection_ExtendedString& ProgID,Standard_GUID& ID)
68{
69 if( guidprogidmap.IsBound2(ProgID) ) {
70 ID = guidprogidmap.Find2( ProgID );
71 return Standard_True;
72 }
73 return Standard_False;
74}
75
76//=======================================================================
77//function : ProgIDFromGUID
78//purpose :
79//=======================================================================
80Standard_Boolean TDF::ProgIDFromGUID(const Standard_GUID& ID,TCollection_ExtendedString& ProgID)
81{
82 if( guidprogidmap.IsBound1(ID) ) {
83 ProgID = guidprogidmap.Find1( ID );
84 return Standard_True;
85 }
86 return Standard_False;
87}
88