osg::ImageSequence Class Reference

Image Buffer class. More...

Inheritance diagram for osg::ImageSequence:

Inheritance graph
[legend]
List of all members.

Public Types

typedef std::list< osg::ref_ptr<
osg::Image > > 
Images
typedef std::list< std::string > FileNames
 PRE_LOAD_ALL_IMAGES
 PAGE_AND_RETAIN_IMAGES
 PAGE_AND_DISCARD_USED_IMAGES
enum  Mode { PRE_LOAD_ALL_IMAGES, PAGE_AND_RETAIN_IMAGES, PAGE_AND_DISCARD_USED_IMAGES }

Public Member Functions

 ImageSequence ()
 ImageSequence (const ImageSequence &ImageSequence, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 Copy constructor using CopyOp to manage deep vs shallow copy.
virtual ObjectcloneType () const
 Clone the type of an object, with Object* return type.
virtual Objectclone (const CopyOp &copyop) const
 Clone an object, with Object* return type.
virtual bool isSameKindAs (const Object *obj) const
virtual const char * libraryName () const
 return the name of the object's library.
virtual const char * className () const
 return the name of the object's class type.
virtual int compare (const Image &rhs) const
 Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
virtual void setReferenceTime (double t)
virtual double getReferenceTime () const
virtual void setTimeMultiplier (double tm)
virtual double getTimeMultiplier () const
void setMode (Mode mode)
Mode getMode () const
void setDuration (double duration)
double getDuration () const
void addImageFile (const std::string &fileName)
FileNamesgetFileNames ()
const FileNamesgetFileNames () const
void addImage (osg::Image *image)
ImagesgetImages ()
const ImagesgetImages () const
virtual void update (NodeVisitor *nv)

Protected Types

typedef std::pair< std::string,
osg::ref_ptr< osg::Image > > 
FileNameImagePair
typedef std::list< FileNameImagePairFileNameImageList

Protected Member Functions

virtual ~ImageSequence ()
void setImageToChild (const osg::Image *image)
void computeTimePerImage ()

Protected Attributes

double _referenceTime
double _timeMultiplier
Mode _mode
double _duration
double _timePerImage
OpenThreads::Mutex _mutex
FileNames _fileNames
FileNames::iterator _fileNamesIterator
double _fileNamesIteratorTime
double _imageHeadTime
Images _images
Images::iterator _imageIterator
double _imageIteratorTime
FileNameImageList _filesRequested

Classes

struct  UpdateCallback

Detailed Description

Image Buffer class.


Member Typedef Documentation

typedef std::list< FileNameImagePair > osg::ImageSequence::FileNameImageList [protected]

typedef std::pair< std::string, osg::ref_ptr<osg::Image> > osg::ImageSequence::FileNameImagePair [protected]

typedef std::list< std::string > osg::ImageSequence::FileNames

typedef std::list< osg::ref_ptr<osg::Image> > osg::ImageSequence::Images


Member Enumeration Documentation

enum osg::ImageSequence::Mode

Enumerator:
PRE_LOAD_ALL_IMAGES 
PAGE_AND_RETAIN_IMAGES 
PAGE_AND_DISCARD_USED_IMAGES 


Constructor & Destructor Documentation

osg::ImageSequence::ImageSequence (  ) 

osg::ImageSequence::ImageSequence ( const ImageSequence ImageSequence,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
)

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::ImageSequence::~ImageSequence (  )  [inline, protected, virtual]


Member Function Documentation

void osg::ImageSequence::addImage ( osg::Image image  ) 

void osg::ImageSequence::addImageFile ( const std::string &  fileName  ) 

virtual const char* osg::ImageSequence::className (  )  const [inline, virtual]

return the name of the object's class type.

Must be defined by derived classes.

Reimplemented from osg::ImageStream.

virtual Object* osg::ImageSequence::clone ( const CopyOp copyop  )  const [inline, virtual]

Clone an object, with Object* return type.

Must be defined by derived classes.

Reimplemented from osg::ImageStream.

virtual Object* osg::ImageSequence::cloneType (  )  const [inline, virtual]

Clone the type of an object, with Object* return type.

Must be defined by derived classes.

Reimplemented from osg::ImageStream.

virtual int osg::ImageSequence::compare ( const Image rhs  )  const [virtual]

Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

Reimplemented from osg::ImageStream.

void osg::ImageSequence::computeTimePerImage (  )  [protected]

double osg::ImageSequence::getDuration (  )  const [inline]

const FileNames& osg::ImageSequence::getFileNames (  )  const [inline]

FileNames& osg::ImageSequence::getFileNames (  )  [inline]

const Images& osg::ImageSequence::getImages (  )  const [inline]

Images& osg::ImageSequence::getImages (  )  [inline]

Mode osg::ImageSequence::getMode (  )  const [inline]

virtual double osg::ImageSequence::getReferenceTime (  )  const [inline, virtual]

Reimplemented from osg::ImageStream.

virtual double osg::ImageSequence::getTimeMultiplier (  )  const [inline, virtual]

Reimplemented from osg::ImageStream.

virtual bool osg::ImageSequence::isSameKindAs ( const Object obj  )  const [inline, virtual]

Reimplemented from osg::ImageStream.

virtual const char* osg::ImageSequence::libraryName (  )  const [inline, virtual]

return the name of the object's library.

Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Reimplemented from osg::ImageStream.

void osg::ImageSequence::setDuration ( double  duration  ) 

void osg::ImageSequence::setImageToChild ( const osg::Image image  )  [protected]

void osg::ImageSequence::setMode ( Mode  mode  ) 

virtual void osg::ImageSequence::setReferenceTime ( double  t  )  [inline, virtual]

Reimplemented from osg::ImageStream.

virtual void osg::ImageSequence::setTimeMultiplier ( double  tm  )  [inline, virtual]

Reimplemented from osg::ImageStream.

virtual void osg::ImageSequence::update ( NodeVisitor nv  )  [virtual]

Reimplemented from osg::Image.


Member Data Documentation

double osg::ImageSequence::_duration [protected]

FileNames osg::ImageSequence::_fileNames [protected]

FileNames::iterator osg::ImageSequence::_fileNamesIterator [protected]

double osg::ImageSequence::_fileNamesIteratorTime [protected]

FileNameImageList osg::ImageSequence::_filesRequested [protected]

double osg::ImageSequence::_imageHeadTime [protected]

Images::iterator osg::ImageSequence::_imageIterator [protected]

double osg::ImageSequence::_imageIteratorTime [protected]

Images osg::ImageSequence::_images [protected]

Mode osg::ImageSequence::_mode [protected]

OpenThreads::Mutex osg::ImageSequence::_mutex [protected]

double osg::ImageSequence::_referenceTime [protected]

double osg::ImageSequence::_timeMultiplier [protected]

double osg::ImageSequence::_timePerImage [protected]


The documentation for this class was generated from the following file:
Generated at Tue Aug 5 20:31:54 2008 for the OpenSceneGraph by doxygen 1.4.7.