// Created by: DAUTRY Philippe // Copyright (c) 1997-1999 Matra Datavision // Copyright (c) 1999-2014 OPEN CASCADE SAS // // This file is part of Open CASCADE Technology software library. // // This library is free software; you can redistribute it and/or modify it under // the terms of the GNU Lesser General Public License version 2.1 as published // by the Free Software Foundation, with special exception defined in the file // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT // distribution for complete text of the license and disclaimer of any warranty. // // Alternatively, this file may be used under the terms of Open CASCADE // commercial license or contractual agreement. // ------------ // modified Sergey Zaritchny // Version: 0.0 //Version Date Purpose // 0.0 Aug 4 1997 Creation #include #include #include #include // Storage #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // Retrieval #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // enums #include #include //======================================================================= //function : AddStorageDriver //purpose : //======================================================================= void MDataStd::AddStorageDrivers (const Handle(MDF_ASDriverHSequence)& aDriverSeq, const Handle(CDM_MessageDriver)& theMsgDriver) { aDriverSeq->Append(new MDataStd_DirectoryStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_UAttributeStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NameStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_CommentStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_VariableStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExpressionStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RelationStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NoteBookStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_TreeNodeStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExtStringArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_TickStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerListStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealListStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExtStringListStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_BooleanListStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ReferenceListStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_BooleanArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ReferenceArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ByteArrayStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NamedDataStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_AsciiStringStorageDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntPackedMapStorageDriver(theMsgDriver)); } //======================================================================= //function : AddRetrievalDriver //purpose : //======================================================================= void MDataStd::AddRetrievalDrivers (const Handle(MDF_ARDriverHSequence)& aDriverSeq,const Handle(CDM_MessageDriver)& theMsgDriver) { aDriverSeq->Append(new MDataStd_DirectoryRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_UAttributeRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NameRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_CommentRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_VariableRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExpressionRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RelationRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NoteBookRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_TreeNodeRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExtStringArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_TickRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerListRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealListRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExtStringListRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_BooleanListRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ReferenceListRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_BooleanArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ReferenceArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ByteArrayRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_NamedDataRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_AsciiStringRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntPackedMapRetrievalDriver(theMsgDriver)); aDriverSeq->Append(new MDataStd_ByteArrayRetrievalDriver_1(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntegerArrayRetrievalDriver_1(theMsgDriver)); aDriverSeq->Append(new MDataStd_RealArrayRetrievalDriver_1(theMsgDriver)); aDriverSeq->Append(new MDataStd_ExtStringArrayRetrievalDriver_1(theMsgDriver)); aDriverSeq->Append(new MDataStd_IntPackedMapRetrievalDriver_1(theMsgDriver)); } //======================================================================= //function : RealDimensionToInteger //purpose : //======================================================================= Standard_Integer MDataStd::RealDimensionToInteger(const TDataStd_RealEnum e) { switch (e) { case TDataStd_SCALAR : return 0; case TDataStd_LENGTH : return 1; case TDataStd_ANGULAR : return 2; default: Standard_DomainError::Raise("TDataStd_RealEnum; enum term unknown"); } return 0; } //======================================================================= //function : IntegerToRealDimension //purpose : //======================================================================= TDataStd_RealEnum MDataStd::IntegerToRealDimension(const Standard_Integer i) { switch(i) { // planar constraints case 0 : return TDataStd_SCALAR; case 1 : return TDataStd_LENGTH; case 2 : return TDataStd_ANGULAR; default : Standard_DomainError::Raise("TDataStd_RealEnum; enum term unknown "); } return TDataStd_SCALAR; }