DD::Image::GeoReader Class Reference

List of all members.

Public Types

typedef GeoDescription Description

Public Member Functions

 GeoReader (ReadGeo *)
virtual ~GeoReader ()
virtual void _open ()
virtual void geometry_engine (Scene &, GeometryList &out)
const char * filename () const
bool readTextureWCoord ()
virtual bool enableAxisKnob ()
virtual void get_geometry_hash (Hash *geo_hash)=0
virtual int knob_changed (Knob *k)=0
virtual void _validate (const bool for_real)=0
virtual void append (Hash &newHash)=0
virtual Iopdefault_material_iop () const

Protected Attributes

ReadGeogeo

Friends

class ReadGeo

Detailed Description

Reads data from a geometry file.

The ReadGeo creates one of these for each file it reads. Each different file type is a different subclass. Each subclass defines a Reader_Description object, all of these are searched to figure out what subclass to use.

The base class for GeoReader both provides default implementations and serves as the "NullReader" that is used when the type cannot be figured out.


Constructor & Destructor Documentation

GeoReader::GeoReader ( ReadGeo i)

Subclasses should have constructors that match Reader_Description::constructor.

GeoReader::~GeoReader ( ) [virtual]

The destructor must close any files (even though the ReadGeo may have opened them).


Member Function Documentation

void GeoReader::_open ( ) [virtual]

This is called before the first call to geometry_engine(). It should do any expensive setup.

void GeoReader::geometry_engine ( Scene ,
GeometryList out 
) [virtual]

Read geometry from the file into the local GeoInfo geometry data structure.

References DD::Image::Op::debug().

Referenced by DD::Image::ReadGeo::create_geometry().

const char* DD::Image::GeoReader::filename ( ) const [inline]

The filename

bool DD::Image::GeoReader::readTextureWCoord ( ) [inline]

read texture texture w coord

virtual bool DD::Image::GeoReader::enableAxisKnob ( ) [inline, virtual]

enable the axis knob or knot for the current plugin This is a temporary hack fix until per-mesh animation over-rides can be introduced.

virtual void DD::Image::GeoReader::get_geometry_hash ( Hash geo_hash) [pure virtual]

Get the geometry hash.

Referenced by DD::Image::ReadGeo::get_geometry_hash().

virtual int DD::Image::GeoReader::knob_changed ( Knob k) [pure virtual]

Implements the knob_changed callback for readers.

virtual void DD::Image::GeoReader::_validate ( const bool  for_real) [pure virtual]

Implements the _validate callback for readers.

virtual void DD::Image::GeoReader::append ( Hash newHash) [pure virtual]

Has the state chnaged?

virtual Iop* DD::Image::GeoReader::default_material_iop ( ) const [inline, virtual]

Default material