Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Ogre::ILImageCodec Class Reference

Codec specialized in images loaded using DevIL. More...

#include <OgreILImageCodec.h>

Inheritance diagram for Ogre::ILImageCodec:

Ogre::ImageCodec Ogre::Codec List of all members.

Public Types

typedef SharedPtr< CodecData > CodecDataPtr
typedef ConstMapIterator<
CodecList
CodecIterator
typedef std::pair< MemoryDataStreamPtr,
CodecDataPtr
DecodeResult
 Result of a decoding; both a decoded data stream and CodecData metadata.


Public Member Functions

 ILImageCodec (const String &type, unsigned int ilType)
virtual ~ILImageCodec ()
DataStreamPtr code (MemoryDataStreamPtr &input, CodecDataPtr &pData) const
 

void codeToFile (MemoryDataStreamPtr &input, const String &outFileName, CodecDataPtr &pData) const
 Provided for efficiency since coding to memory is progressive therefore memory required is unknown leading to reallocations.
Parameters:
input The input data
outFileName The filename to write to
pData Extra information to be passed to the codec (codec type specific)


DecodeResult decode (DataStreamPtr &input) const
 
Parameters:
input Stream containing the encoded data
Note:
Has a variable number of arguments, which depend on the codec type.


void initialiseIL (void)
 Initialise DevIL.

virtual String getType () const
 Returns the type of the codec as a String.

String getDataType () const
 Returns the type of the data that supported by this codec as a String.


Static Public Member Functions

void registerCodec (Codec *pCodec)
 Registers a new codec in the database.

void unRegisterCodec (Codec *pCodec)
 Unregisters a codec from the database.

CodecIterator getCodecIterator (void)
 Gets the iterator for the registered codecs.

StringVector getExtensions (void)
 Gets the file extension list for the registered codecs.

CodecgetCodec (const String &extension)
 Gets the codec registered for the passed in file extension.


Protected Types

typedef std::map< String,
Codec * > 
CodecList

Static Protected Attributes

CodecList ms_mapCodecs
 A map that contains all the registered codecs.


Private Attributes

String mType
unsigned int mIlType

Static Private Attributes

bool _is_initialised

Detailed Description

Codec specialized in images loaded using DevIL.

Remarks:
The users implementing subclasses of ImageCodec are required to return a valid pointer to a ImageData class from the decode(...) function.

Definition at line 37 of file OgreILImageCodec.h.


Member Typedef Documentation

typedef SharedPtr<CodecData> Ogre::Codec::CodecDataPtr [inherited]
 

Definition at line 63 of file OgreCodec.h.

typedef ConstMapIterator<CodecList> Ogre::Codec::CodecIterator [inherited]
 

Definition at line 65 of file OgreCodec.h.

Referenced by Ogre::Codec::getCodecIterator().

typedef std::map< String, Codec* > Ogre::Codec::CodecList [protected, inherited]
 

Definition at line 48 of file OgreCodec.h.

typedef std::pair<MemoryDataStreamPtr, CodecDataPtr> Ogre::Codec::DecodeResult [inherited]
 

Result of a decoding; both a decoded data stream and CodecData metadata.

Definition at line 110 of file OgreCodec.h.


Constructor & Destructor Documentation

Ogre::ILImageCodec::ILImageCodec const String type,
unsigned int  ilType
 

virtual Ogre::ILImageCodec::~ILImageCodec  )  [virtual]
 

Definition at line 46 of file OgreILImageCodec.h.


Member Function Documentation

DataStreamPtr Ogre::ILImageCodec::code MemoryDataStreamPtr input,
CodecDataPtr pData
const [virtual]
 

Implements Ogre::Codec.

void Ogre::ILImageCodec::codeToFile MemoryDataStreamPtr input,
const String outFileName,
CodecDataPtr pData
const [virtual]
 

Provided for efficiency since coding to memory is progressive therefore memory required is unknown leading to reallocations.

Parameters:
input The input data
outFileName The filename to write to
pData Extra information to be passed to the codec (codec type specific)

Implements Ogre::Codec.

DecodeResult Ogre::ILImageCodec::decode DataStreamPtr input  )  const [virtual]
 

Parameters:
input Stream containing the encoded data
Note:
Has a variable number of arguments, which depend on the codec type.

Implements Ogre::Codec.

Codec* Ogre::Codec::getCodec const String extension  )  [static, inherited]
 

Gets the codec registered for the passed in file extension.

CodecIterator Ogre::Codec::getCodecIterator void   )  [static, inherited]
 

Gets the iterator for the registered codecs.

Definition at line 85 of file OgreCodec.h.

References Ogre::Codec::CodecIterator.

String Ogre::ImageCodec::getDataType  )  const [virtual, inherited]
 

Returns the type of the data that supported by this codec as a String.

Implements Ogre::Codec.

Definition at line 70 of file OgreImageCodec.h.

References Ogre::String.

StringVector Ogre::Codec::getExtensions void   )  [static, inherited]
 

Gets the file extension list for the registered codecs.

virtual String Ogre::ILImageCodec::getType  )  const [virtual]
 

Returns the type of the codec as a String.

Implements Ogre::Codec.

void Ogre::ILImageCodec::initialiseIL void   ) 
 

Initialise DevIL.

void Ogre::Codec::registerCodec Codec pCodec  )  [static, inherited]
 

Registers a new codec in the database.

Definition at line 72 of file OgreCodec.h.

References Ogre::Codec::getType().

void Ogre::Codec::unRegisterCodec Codec pCodec  )  [static, inherited]
 

Unregisters a codec from the database.

Definition at line 79 of file OgreCodec.h.

References Ogre::Codec::getType().


Member Data Documentation

bool Ogre::ILImageCodec::_is_initialised [static, private]
 

Definition at line 40 of file OgreILImageCodec.h.

unsigned int Ogre::ILImageCodec::mIlType [private]
 

Definition at line 42 of file OgreILImageCodec.h.

CodecList Ogre::Codec::ms_mapCodecs [static, protected, inherited]
 

A map that contains all the registered codecs.

Definition at line 51 of file OgreCodec.h.

String Ogre::ILImageCodec::mType [private]
 

Definition at line 41 of file OgreILImageCodec.h.


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

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:39:22 2006