Files
OCCT/src/TDF/TDF_RelocationTable.cdl
bugmaster b311480ed5 0023024: Update headers of OCCT files
Added appropriate copyright and license information in source files
2012-03-21 19:43:04 +04:00

211 lines
7.4 KiB
Plaintext
Executable File

-- Created by: DAUTRY Philippe
-- Copyright (c) 1997-1999 Matra Datavision
-- Copyright (c) 1999-2012 OPEN CASCADE SAS
--
-- The content of this file is subject to the Open CASCADE Technology Public
-- License Version 6.5 (the "License"). You may not use the content of this file
-- except in compliance with the License. Please obtain a copy of the License
-- at http://www.opencascade.org and read it completely before using this file.
--
-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
--
-- The Original Code and all software distributed under the License is
-- distributed on an "AS IS" basis, without warranty of any kind, and the
-- Initial Developer hereby disclaims all such warranties, including without
-- limitation, any warranties of merchantability, fitness for a particular
-- purpose or non-infringement. Please see the License for the specific terms
-- and conditions governing the rights and limitations under the License.
-- -----------------------
---Version: 0.0
--Version Date Purpose
-- 0.0 Mar 6 1997 Creation
-- 1.0 Sep 23 1998 DoubleMaps->DataMap
class RelocationTable from TDF
inherits TShared from MMgt
---Purpose: This is a relocation dictionnary between source
-- and target labels, attributes or any
-- transient. Note that one target value may be the
-- relocation value of more than one source object.
--
-- Common behaviour: it returns true and the found
-- relocation value as target object; false
-- otherwise.
--
-- Look at SelfRelocate method for more explanation
-- about self relocation behavior of this class.
uses
Attribute from TDF,
Data from TDF,
Label from TDF,
LabelMap from TDF,
LabelDataMap from TDF,
AttributeMap from TDF,
AttributeDataMap from TDF,
IndexedDataMapOfTransientTransient from TColStd
-- raises
is
Create(selfRelocate : Boolean from Standard = Standard_False)
-- Create(selfRelocate : Boolean from Standard = Standard_False;afterRelocate :Boolean from Standard = Standard_False)
returns mutable RelocationTable from TDF;
---Purpose: Creates an relocation table. <selfRelocate> says
-- if a value without explicit relocation is its own
-- relocation.
---Category: Self relocation methods.
-- -------------------------
SelfRelocate(me : mutable; selfRelocate : Boolean from Standard);
---Purpose: Sets <mySelfRelocate> to <selfRelocate>.
--
-- This flag affects the HasRelocation method
-- behavior like this:
--
-- <mySelfRelocate> == False:
--
-- If no relocation object is found in the map, a
-- null object is returned
--
-- <mySelfRelocate> == True:
--
-- If no relocation object is found in the map, the
-- method assumes the source object is relocation
-- value; so the source object is returned as target
-- object.
SelfRelocate(me) returns Boolean from Standard;
---Purpose: Returns <mySelfRelocate>.
AfterRelocate(me : mutable; afterRelocate : Boolean from Standard);
AfterRelocate(me) returns Boolean from Standard;
---Purpose: Returns <myAfterRelocate>.
---Category: Label relocation methods.
-- -------------------------
SetRelocation(me : mutable;
aSourceLabel : Label from TDF;
aTargetLabel : Label from TDF);
---Purpose: Sets the relocation value of <aSourceLabel> to
-- <aTargetLabel>.
HasRelocation(me;
aSourceLabel : Label from TDF;
aTargetLabel : in out Label from TDF)
returns Boolean from Standard;
---Purpose: Finds the relocation value of <aSourceLabel>
-- and returns it into <aTargetLabel>.
--
-- (See above SelfRelocate method for more
-- explanation about the method behavior)
---Category: Attribute relocation methods.
-- -----------------------------
SetRelocation(me : mutable;
aSourceAttribute : Attribute from TDF;
aTargetAttribute : Attribute from TDF);
---Purpose: Sets the relocation value of <aSourceAttribute> to
-- <aTargetAttribute>.
HasRelocation(me;
aSourceAttribute : Attribute from TDF;
aTargetAttribute : in out mutable Attribute from TDF)
returns Boolean from Standard;
---Purpose: Finds the relocation value of <aSourceAttribute>
-- and returns it into <aTargetAttribute>.
--
-- (See above SelfRelocate method for more
-- explanation about the method behavior)
---Category: Transient other types object relocation methods.
-- ------------------------------------------------
SetTransientRelocation(me : mutable;
aSourceTransient : Transient from Standard;
aTargetTransient : Transient from Standard);
---Purpose: Sets the relocation value of <aSourceTransient> to
-- <aTargetTransient>.
HasTransientRelocation
(me;
aSourceTransient : Transient from Standard;
aTargetTransient : in out mutable Transient from Standard)
returns Boolean from Standard;
---Purpose: Finds the relocation value of <aSourceTransient>
-- and returns it into <aTargetTransient>.
--
-- (See above SelfRelocate method for more
-- explanation about the method behavior)
---Category: Miscelleaneous
-- --------------
Clear(me : mutable);
---Purpose: Clears the relocation dictionnary, but lets the
-- self relocation flag to its current value.
TargetLabelMap(me; aLabelMap : in out LabelMap from TDF);
---Purpose: Fills <aLabelMap> with target relocation
-- labels. <aLabelMap> is not cleared before use.
TargetAttributeMap(me; anAttributeMap : in out AttributeMap from TDF);
---Purpose: Fills <anAttributeMap> with target relocation
-- attributes. <anAttributeMap> is not cleared before
-- use.
-- Try not to use the following methods, for they are very
-- implementation dependent.
LabelTable(me : mutable)
returns LabelDataMap from TDF;
---Purpose: Returns <myLabelTable> to be used or updated.
--
---C++: return &
AttributeTable(me : mutable)
returns AttributeDataMap from TDF;
---Purpose: Returns <myAttributeTable> to be used or updated.
--
---C++: return &
TransientTable(me : mutable)
returns IndexedDataMapOfTransientTransient from TColStd;
---Purpose: Returns <myTransientTable> to be used or updated.
--
---C++: return &
Dump(me;
dumpLabels, dumpAttributes, dumpTransients : Boolean from Standard;
anOS : in out OStream from Standard)
returns OStream from Standard;
---Purpose: Dumps the relocation table.
--
---C++: return &
fields
mySelfRelocate : Boolean from Standard;
myAfterRelocate : Boolean from Standard;
myLabelTable : LabelDataMap from TDF;
myAttributeTable : AttributeDataMap from TDF;
myTransientTable : IndexedDataMapOfTransientTransient from TColStd;
-- Indexed... because there is no other type available in TColStd.
end RelocationTable from TDF;