Coin Logo http://www.sim.no
http://www.coin3d.org

dimeInput Class Reference

The dimeInput class offers transparent file I/O for DXF and DXB. More...

#include <dime/Input.h>

List of all members.

Public Member Functions

 dimeInput ()
 ~dimeInput ()
bool setFileHandle (FILE *fp)
bool setFile (const char *const filename)
bool setFilePointer (const int fd)
bool eof () const
void setCallback (int(*cb)(float, void *), void *cbdata)
float relativePosition ()
void putBackGroupCode (const int32 code)
bool readGroupCode (int32 &code)
bool readInt8 (int8 &val)
bool readInt16 (int16 &val)
bool readInt32 (int32 &val)
bool readFloat (float &val)
bool readDouble (dxfdouble &val)
const char * readString ()
dimeModelgetModel ()
dimeMemHandlergetMemHandler ()
int getFilePosition () const
bool isBinary () const
int getVersion () const
bool isAborted () const

Friends

class dimeModel


Detailed Description

The dimeInput class offers transparent file I/O for DXF and DXB.


Constructor & Destructor Documentation

dimeInput::dimeInput (  ) 

Constructor.

dimeInput::~dimeInput (  ) 

Destructor.


Member Function Documentation

bool dimeInput::eof (  )  const

Returns true if end of file is encountered.

int dimeInput::getFilePosition (  )  const

For ASCII files, it returns the current line number. For binary files the file position is returned.

dimeMemHandler * dimeInput::getMemHandler (  ) 

Returns the memory handler used in this model.

dimeModel * dimeInput::getModel (  ) 

Returns the model for this file.

int dimeInput::getVersion (  )  const

Returns the version of this file (10, 12, 13 or 14).

bool dimeInput::isAborted (  )  const

This method returns wether file input was aborted or not.

bool dimeInput::isBinary (  )  const

Returns true if this is a binary (DXB) file.

void dimeInput::putBackGroupCode ( const int32  code  ) 

This function is needed when a loader snoops for future group codes. It is possible to put back a single group code so that the next time dimeInput::readGroupCode() is called, the putback value will be returned.

bool dimeInput::readDouble ( dxfdouble &  val  ) 

Reads a dxfdouble precision floating point number from the file.

bool dimeInput::readFloat ( float &  val  ) 

Reads a single precision floating point number from the file.

bool dimeInput::readGroupCode ( int32 &  code  ) 

Reads a group code from the file. In binary files, group codes are represented as a single byte, with the exception of extended data which has 255 as the first byte, and then the actual group code following as a 16-bit integer.

bool dimeInput::readInt16 ( int16 &  val  ) 

Reads a 16 bit integer from the file.

bool dimeInput::readInt32 ( int32 &  val  ) 

Reads a 32 bit integer from the file.

bool dimeInput::readInt8 ( int8 &  val  ) 

Reads an 8 bit integer from the file.

const char * dimeInput::readString (  ) 

Returns a null-terminated string read from the file. The string is valid only until the next read operation, so you'd better copy it somewhere if you need it.

float dimeInput::relativePosition (  ) 

Returns the relative file position. 0.0 means beginning of file, 1.0 is at end of file.

void dimeInput::setCallback ( int(*)(float, void *)  cb,
void *  cbdata 
)

This method sets a progress callback that will be called with a float in the range between 0 and 1, and void * cbdata as arguments.

bool dimeInput::setFile ( const char *const   filename  ) 

Opens the file 'filename' for reading. True is returned if the file is opened correctly. File will be closed in destructor.

bool dimeInput::setFileHandle ( FILE *  fp  ) 

Sets the input data to the stream fp. must be a valid file/stream, and will not be closed in the destuctor. No progress information will be avilable during loading if this method is used.

bool dimeInput::setFilePointer ( const int  newfd  ) 

Sets the file pointer for this instance. newfd is a file opened with the unistd open() function.


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

Copyright © 1998-2005 by Systems in Motion AS. All rights reserved.

Generated on Tue Dec 2 23:27:14 2008 for DIME by Doxygen. 1.4.7