]> OCCT Git - occt-copy.git/commit
0029269: Improvement for thread safety of the STEP translator CR0-740-Hybrid_29269_1
authorgka <gka@opencascade.com>
Wed, 2 Aug 2017 08:36:05 +0000 (11:36 +0300)
committerskl <skl@opencascade.com>
Thu, 1 Oct 2020 16:32:05 +0000 (19:32 +0300)
commite54df8ac571dfa17ab2f97d21f3b9a51492318c9
tree329f33d8b7e543d7787e8ffca3a071d21634795f
parent3a24d5e81cfaad06cb010ecb1d6271f9135d7394
0029269: Improvement for thread safety of the STEP translator

Modification for loading a few STEP files in the model.
Protected by Mutex
1. Loading STEP file in the model with using yacc and lex.
2. Message management
3. Registration in static structure Interface_GeneralLib, Interface_ReaderLib, Interface_Writer_Lib for each StepData_Procotol.

Modifications:
STEPControl_Controller, STEPCAFControl_Controller were created as not static objects when STEPControl_Reader or STEP_Control_Writes were initialized.
Parameters used for translation from Interface::Static were made not static. Map to keep parameters was added in the Interface::InterfaceModel. For STEP translation parameters were initialized during initializing STEPData_STEPModel. model.
Static variables were removed.
Redundant classes were removed from STEP translator.

# Conflicts:
# src/RWStepVisual/RWStepVisual_RWPresentationLayerAssignment.cxx
# src/StepAP214/StepAP214_Protocol.cxx
# src/StepData/StepData_StepReaderData.cxx
# src/StepToTopoDS/StepToTopoDS_TranslateEdgeLoop.cxx
# tests/de/step_1/R9
102 files changed:
src/APIHeaderSection/APIHeaderSection_MakeHeader.cxx
src/HeaderSection/HeaderSection.cxx
src/HeaderSection/HeaderSection_Protocol.cxx
src/HeaderSection/HeaderSection_Protocol.hxx
src/IFSelect/IFSelect_ModelCopier.cxx
src/IFSelect/IFSelect_WorkSession.cxx
src/IFSelect/IFSelect_WorkSession.hxx
src/Interface/Interface_CheckTool.cxx
src/Interface/Interface_CheckTool.hxx
src/Interface/Interface_InterfaceModel.cxx
src/Interface/Interface_InterfaceModel.hxx
src/Interface/Interface_Static.cxx
src/Interface/Interface_Static.hxx
src/Message/Message.cxx
src/Message/Message_Messenger.cxx
src/Message/Message_Msg.cxx
src/Message/Message_MsgFile.cxx
src/QABugs/QABugs_11.cxx
src/RWHeaderSection/RWHeaderSection.cxx
src/RWHeaderSection/RWHeaderSection_ReadWriteModule.cxx
src/RWStepAP214/RWStepAP214.cxx
src/RWStepAP214/RWStepAP214.hxx
src/RWStepAP214/RWStepAP214_ReadWriteModule.cxx
src/RWStepAP214/RWStepAP214_ReadWriteModule.hxx
src/STEPCAFControl/STEPCAFControl_Controller.cxx
src/STEPCAFControl/STEPCAFControl_Controller.hxx
src/STEPCAFControl/STEPCAFControl_Reader.cxx
src/STEPCAFControl/STEPCAFControl_Reader.hxx
src/STEPCAFControl/STEPCAFControl_Writer.cxx
src/STEPCAFControl/STEPCAFControl_Writer.hxx
src/STEPConstruct/STEPConstruct_ContextTool.cxx
src/STEPConstruct/STEPConstruct_ContextTool.hxx
src/STEPConstruct/STEPConstruct_Part.cxx
src/STEPConstruct/STEPConstruct_Part.hxx
src/STEPConstruct/STEPConstruct_Styles.cxx
src/STEPConstruct/STEPConstruct_Styles.hxx
src/STEPConstruct/STEPConstruct_UnitContext.cxx
src/STEPConstruct/STEPConstruct_UnitContext.hxx
src/STEPConstruct/STEPConstruct_ValidationProps.cxx
src/STEPControl/STEPControl_ActorRead.cxx
src/STEPControl/STEPControl_ActorRead.hxx
src/STEPControl/STEPControl_ActorWrite.cxx
src/STEPControl/STEPControl_ActorWrite.hxx
src/STEPControl/STEPControl_Controller.cxx
src/STEPControl/STEPControl_Controller.hxx
src/STEPControl/STEPControl_Reader.cxx
src/STEPControl/STEPControl_Reader.hxx
src/STEPControl/STEPControl_Writer.cxx
src/STEPControl/STEPControl_Writer.hxx
src/STEPEdit/FILES
src/STEPEdit/STEPEdit.cxx [deleted file]
src/STEPEdit/STEPEdit.hxx [deleted file]
src/StepAP214/FILES
src/StepAP214/StepAP214.cxx [deleted file]
src/StepAP214/StepAP214.hxx [deleted file]
src/StepAP214/StepAP214_Protocol.cxx
src/StepAP214/StepAP214_Protocol.hxx
src/StepData/StepData.cxx
src/StepData/StepData.hxx
src/StepData/StepData_FileProtocol.cxx [deleted file]
src/StepData/StepData_FileProtocol.hxx [deleted file]
src/StepData/StepData_Protocol.cxx
src/StepData/StepData_Protocol.hxx
src/StepData/StepData_StepModel.cxx
src/StepData/StepData_StepModel.hxx
src/StepData/StepData_StepReaderData.cxx
src/StepData/StepData_StepReaderTool.hxx
src/StepFile/StepFile_Read.cxx
src/StepSelect/StepSelect_StepType.cxx
src/StepSelect/StepSelect_WorkLibrary.cxx
src/StepToGeom/StepToGeom.cxx
src/StepToTopoDS/StepToTopoDS_Builder.cxx
src/StepToTopoDS/StepToTopoDS_TranslateCompositeCurve.cxx
src/StepToTopoDS/StepToTopoDS_TranslateCurveBoundedSurface.cxx
src/StepToTopoDS/StepToTopoDS_TranslateEdgeLoop.cxx
src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx
src/TopoDSToStep/TopoDSToStep_MakeBrepWithVoids.cxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrep.cxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrepAndBrepWithVoids.cxx
src/TopoDSToStep/TopoDSToStep_MakeGeometricCurveSet.cxx
src/TopoDSToStep/TopoDSToStep_MakeManifoldSolidBrep.cxx
src/TopoDSToStep/TopoDSToStep_MakeShellBasedSurfaceModel.cxx
src/TopoDSToStep/TopoDSToStep_MakeStepEdge.cxx
src/TopoDSToStep/TopoDSToStep_MakeStepFace.cxx
src/TopoDSToStep/TopoDSToStep_MakeStepVertex.cxx
src/TopoDSToStep/TopoDSToStep_Tool.cxx
src/TopoDSToStep/TopoDSToStep_Tool.hxx
src/XDEDRAW/XDEDRAW.cxx
src/XDEDRAW/XDEDRAW_Common.cxx
src/XSAlgo/XSAlgo_AlgoContainer.cxx
src/XSAlgo/XSAlgo_AlgoContainer.hxx
src/XSControl/XSControl_Controller.cxx
src/XSControl/XSControl_Controller.hxx
src/XSControl/XSControl_Functions.cxx
src/XSControl/XSControl_Reader.cxx
src/XSControl/XSControl_Reader.hxx
src/XSControl/XSControl_TransferReader.cxx
src/XSControl/XSControl_WorkSession.cxx
src/XSControl/XSControl_WorkSession.hxx
src/XSDRAWIGES/XSDRAWIGES.cxx
src/XSDRAWSTEP/XSDRAWSTEP.cxx
tests/bugs/xde/bug23597