0027342: STEP - support C++ streams for import / export

- STEP low-level parser is converted to C++; required minimal version of flex is elevated to 2.5.37.
- Added possibility to import STEP from stream, see new method XSControl_Reader::ReadStream() (now implemented in STEP only).
- Parsers ported to win_flex_bison 2.5.23 (flex 2.6.4, bison 3.7.1)
- Added support of C++ flex and bison scanners in in CMake scripts
- Some code clean-up in StepFile and around (unused files and functions are eliminated)
- Option to read from stream is added in DRAW command testreadstep for testing ReadStream() function
- Added test bugs step bug27342
This commit is contained in:
imn
2016-04-06 16:09:55 +03:00
committed by bugmaster
parent ed75148574
commit 68922bccc4
38 changed files with 7084 additions and 5973 deletions

View File

@@ -61,6 +61,16 @@ public:
//! and recognize the Entities)
Standard_EXPORT virtual Standard_Integer ReadFile (const Standard_CString name, Handle(Interface_InterfaceModel)& model, const Handle(Interface_Protocol)& protocol) const = 0;
//! Interface to read a data from the specified stream.
//! @param model is the resulting Model, which has to be created by this method.
//! In case of error, model must be returned Null
//! Return value is a status: 0 - OK, 1 - read failure, -1 - stream failure.
//!
//! Default implementation returns 1 (error).
Standard_EXPORT virtual Standard_Integer ReadStream (const Standard_CString theName, std::istream& theIStream,
Handle(Interface_InterfaceModel)& model,
const Handle(Interface_Protocol)& protocol) const;
//! Gives the way to Write a File from a Model.
//! <ctx> contains all necessary informations : the model, the
//! protocol, the file name, and the list of File Modifiers to be