Open CASCADE Technology
6.5.4
|
Defines unitary operations required to read an Entity from a
File (see FileReaderData, FileReaderTool), under control of
a FileReaderTool. The initial creation is performed by a
GeneralModule (set in GeneralLib). Then, which remains is
Loading data from the FileReaderData to the Entity
To work, a GeneralModule has formerly recognized the Type read
from FileReaderData as a positive Case Number, then the
ReaderModule reads it according to this Case Number
#include <Interface_ReaderModule.hxx>
Public Member Functions | |
virtual Standard_Integer | CaseNum (const Handle< Interface_FileReaderData > &data, const Standard_Integer num) const =0 |
Translates the type of record <num> in <data> to a positive Case Number. If Recognition fails, must return 0 | |
virtual void | Read (const Standard_Integer casenum, const Handle< Interface_FileReaderData > &data, const Standard_Integer num, Handle< Interface_Check > &ach, const Handle< Standard_Transient > &ent) const =0 |
Performs the effective loading from <data>, record <num>, to the Entity <ent> formerly created In case of Error or Warning, fills <ach> with messages Remark that the Case Number comes from translating a record | |
virtual Standard_Boolean | NewRead (const Standard_Integer casenum, const Handle< Interface_FileReaderData > &data, const Standard_Integer num, Handle< Interface_Check > &ach, Handle< Standard_Transient > &ent) const |
Specific operator (create+read) defaulted to do nothing. It can be redefined when it is not possible to work in two steps (NewVoid then Read). This occurs when no default constructor is defined : hence the result <ent> must be created with an effective definition from the reader. Remark : if NewRead is defined, Copy has nothing to do. Returns True if it has produced something, false else. If nothing was produced, <ach> should be filled : it will be treated as "Unrecognized case" by reader tool. |
virtual Standard_Integer Interface_ReaderModule::CaseNum | ( | const Handle< Interface_FileReaderData > & | data, |
const Standard_Integer | num | ||
) | const [pure virtual] |
Implemented in IGESData_ReadWriteModule, and StepData_ReadWriteModule.
virtual Standard_Boolean Interface_ReaderModule::NewRead | ( | const Standard_Integer | casenum, |
const Handle< Interface_FileReaderData > & | data, | ||
const Standard_Integer | num, | ||
Handle< Interface_Check > & | ach, | ||
Handle< Standard_Transient > & | ent | ||
) | const [virtual] |
virtual void Interface_ReaderModule::Read | ( | const Standard_Integer | casenum, |
const Handle< Interface_FileReaderData > & | data, | ||
const Standard_Integer | num, | ||
Handle< Interface_Check > & | ach, | ||
const Handle< Standard_Transient > & | ent | ||
) | const [pure virtual] |
Implemented in StepData_ReadWriteModule, and IGESData_ReadWriteModule.