Developer Documentation
OpenMesh::IO::_OFFReader_ Class Reference

#include <libs_required/OpenMesh/src/OpenMesh/Core/IO/reader/OFFReader.hh>

Inheritance diagram for OpenMesh::IO::_OFFReader_:
OpenMesh::IO::BaseReader

Public Member Functions

virtual ~_OFFReader_ ()
 Destructor.
 
std::string get_description () const
 Returns a brief description of the file type that can be parsed.
 
std::string get_extensions () const
 
std::string get_magic () const
 Return magic bits used to determine file format.
 
bool read (const std::string &_filename, BaseImporter &_bi, Options &_opt)
 
bool can_u_read (const std::string &_filename) const
 Returns true if writer can parse _filename (checks extension). _filename can also provide an extension without a name for a file e.g. _filename == "om" checks, if the reader can read the "om" extension. More...
 
bool read (std::istream &_in, BaseImporter &_bi, Options &_opt)
 
- Public Member Functions inherited from OpenMesh::IO::BaseReader
virtual ~BaseReader ()
 Destructor.
 

Private Member Functions

bool can_u_read (std::istream &_is) const
 
bool read_ascii (std::istream &_in, BaseImporter &_bi, Options &_opt) const
 
bool read_binary (std::istream &_in, BaseImporter &_bi, Options &_opt, bool swap) const
 
void readValue (std::istream &_in, float &_value) const
 
void readValue (std::istream &_in, int &_value) const
 
void readValue (std::istream &_in, unsigned int &_value) const
 
int getColorType (std::string &_line, bool _texCoordsAvailable) const
 

Private Attributes

Options options_
 
Options userOptions_
 

Additional Inherited Members

- Protected Member Functions inherited from OpenMesh::IO::BaseReader
bool check_extension (const std::string &_fname, const std::string &_ext) const
 

Detailed Description

Implementation of the OFF format reader. This class is singleton'ed by SingletonT to OFFReader.

By passing Options to the read function you can manipulate the reading behavoir. The following options can be set:

VertexNormal VertexColor VertexTexCoord FaceColor ColorAlpha [only when reading binary]

These options define if the corresponding data should be read (if available) or if it should be omitted.

After execution of the read function. The options object contains information about what was actually read.

e.g. if VertexNormal was true when the read function was called, but the file did not contain vertex normals then it is false afterwards.

When reading a binary off with Color Flag in the header it is assumed that all vertices and faces have colors in the format "int int int". If ColorAlpha is set the format "int int int int" is assumed.

Definition at line 117 of file OFFReader.hh.

Member Function Documentation

bool OpenMesh::IO::_OFFReader_::can_u_read ( const std::string &  _filename) const
virtual

Returns true if writer can parse _filename (checks extension). _filename can also provide an extension without a name for a file e.g. _filename == "om" checks, if the reader can read the "om" extension.

Parameters
_filenamecomplete name of a file or just the extension
Returns
true, if reader can read data with the given extension

Reimplemented from OpenMesh::IO::BaseReader.

Definition at line 613 of file OFFReader.cc.

std::string OpenMesh::IO::_OFFReader_::get_extensions ( ) const
inlinevirtual

Returns a string with the accepted file extensions separated by a whitespace and in small caps.

Implements OpenMesh::IO::BaseReader.

Definition at line 127 of file OFFReader.hh.

bool OpenMesh::IO::_OFFReader_::read ( const std::string &  _filename,
BaseImporter _bi,
Options _opt 
)
virtual

Reads a mesh given by a filename. Usually this method opens a stream and passes it to stream read method. Acceptance checks by filename extension can be placed here.

Options can be passed via _opt. After execution _opt contains the Options that were available

Implements OpenMesh::IO::BaseReader.

Definition at line 111 of file OFFReader.cc.

bool OpenMesh::IO::_OFFReader_::read ( std::istream &  _is,
BaseImporter _bi,
Options _opt 
)
virtual

Reads a mesh given by a std::stream. This method usually uses the same stream reading method that read uses. Options can be passed via _opt. After execution _opt contains the Options that were available.

Please make sure that if _is is std::ifstream, the correct std::ios_base::openmode flags are set.

Implements OpenMesh::IO::BaseReader.

Definition at line 138 of file OFFReader.cc.


The documentation for this class was generated from the following files: