OpenRaw::RawFile Class Reference

Inheritance diagram for OpenRaw::RawFile:
OpenRaw::Internals::CRWFile OpenRaw::Internals::IFDFile OpenRaw::Internals::ARWFile OpenRaw::Internals::Cr2File OpenRaw::Internals::MRWFile OpenRaw::Internals::ORFFile OpenRaw::Internals::PEFFile OpenRaw::Internals::TiffEpFile OpenRaw::Internals::DNGFile OpenRaw::Internals::ERFFile OpenRaw::Internals::NEFFile

List of all members.

Classes

struct  camera_ids_t
class  Private

Public Types

typedef ::or_rawfile_type Type
typedef ::or_rawfile_typeid TypeId

Public Member Functions

virtual ~RawFile ()
Type type () const
TypeId typeId ()
const std::vector< uint32_t > & listThumbnailSizes (void)
::or_error getThumbnail (uint32_t size, Thumbnail &thumbnail)
::or_error getRawData (RawData &rawdata, uint32_t options)
::or_error getRenderedImage (BitmapData &bitmapdata, uint32_t options)
int32_t getOrientation ()
const MetaValuegetMetaValue (int32_t meta_index)

Static Public Member Functions

static const char ** fileExtensions ()
static RawFilenewRawFile (const char *_filename, Type _typeHint=OR_RAWFILE_TYPE_UNKNOWN)
static RawFilenewRawFileFromMemory (const uint8_t *buffer, uint32_t len, Type _typeHint=OR_RAWFILE_TYPE_UNKNOWN)

Protected Member Functions

 RawFile (IO::Stream *s, Type _type)
void _setTypeId (TypeId _type_id)
virtual ::or_error _enumThumbnailSizes (std::vector< uint32_t > &list)=0
virtual ::or_error _getThumbnail (uint32_t size, Thumbnail &thumbnail)=0
virtual ::or_error _getRawData (RawData &data, uint32_t options)=0
virtual MetaValue_getMetaValue (int32_t)=0
TypeId _typeIdFromModel (const std::string &model)
void _setIdMap (const camera_ids_t *map)
virtual void _identifyId ()=0

Detailed Description

Definition at line 43 of file rawfile.h.


Constructor & Destructor Documentation

OpenRaw::RawFile::~RawFile (  )  [virtual]

Destructor

Definition at line 285 of file rawfile.cpp.

OpenRaw::RawFile::RawFile ( IO::Stream s,
RawFile::Type  _type 
) [protected]

Construct a raw file

Parameters:
s the stream to load from. Take ownership.
_type the type

Definition at line 278 of file rawfile.cpp.


Member Function Documentation

virtual ::or_error OpenRaw::RawFile::_enumThumbnailSizes ( std::vector< uint32_t > &  list  )  [protected, pure virtual]

enumerate the thumbnail sizes.

Parameters:
list the list to enumerate into
Returns:
OR_ERROR_NONE if success

Implemented in OpenRaw::Internals::CRWFile, OpenRaw::Internals::IFDFile, and OpenRaw::Internals::MRWFile.

Referenced by listThumbnailSizes().

virtual ::or_error OpenRaw::RawFile::_getRawData ( RawData data,
uint32_t  options 
) [protected, pure virtual]

get the RAW data

Parameters:
data the RAW data
option the option bits
Returns:
OR_ERROR_NONE if success Return the data compressed or uncompressed.

Implemented in OpenRaw::Internals::ARWFile, OpenRaw::Internals::CRWFile, OpenRaw::Internals::DNGFile, OpenRaw::Internals::ERFFile, OpenRaw::Internals::MRWFile, OpenRaw::Internals::ORFFile, OpenRaw::Internals::PEFFile, and OpenRaw::Internals::TiffEpFile.

Referenced by getRawData().

virtual ::or_error OpenRaw::RawFile::_getThumbnail ( uint32_t  size,
Thumbnail thumbnail 
) [protected, pure virtual]

get the thumbnail of exact size.

Parameters:
size the size in pixel of the square
Return values:
thumbnail the thumbnail to load
Returns:
OR_ERROR_NONE if success listThumbnailSizes() to understand how to fetch the sizes available

Implemented in OpenRaw::Internals::CRWFile, and OpenRaw::Internals::MRWFile.

Referenced by getThumbnail().

void OpenRaw::RawFile::_setTypeId ( RawFile::TypeId  _type_id  )  [protected]

Set the file type id

Definition at line 304 of file rawfile.cpp.

References OpenRaw::RawFile::Private::m_type_id.

const char ** OpenRaw::RawFile::fileExtensions (  )  [static]

return a NULL terminated list of file extensions that the library handle. This is purely informational.

Returns:
a pointer the list, NULL terminated. The pointer is owned by the library.

Definition at line 127 of file rawfile.cpp.

int32_t OpenRaw::RawFile::getOrientation (  ) 

Get the orientation of the image, using Exif enums.

Definition at line 409 of file rawfile.cpp.

or_error OpenRaw::RawFile::getRawData ( RawData rawdata,
uint32_t  options 
)

Get the RAW data

Parameters:
rawdata the RawData to put the data into
options the option bits defined by or_options
Returns:
the error code

Definition at line 372 of file rawfile.cpp.

References _getRawData().

Referenced by getRenderedImage().

or_error OpenRaw::RawFile::getRenderedImage ( BitmapData bitmapdata,
uint32_t  options 
)

Get the rendered image

Parameters:
bitmapdata the BitmapData to put the image into
options the option bits. Pass 0 for now.
Returns:
the error code

Definition at line 379 of file rawfile.cpp.

References getRawData(), OpenRaw::BitmapData::setDataType(), and OpenRaw::BitmapData::setDimensions().

or_error OpenRaw::RawFile::getThumbnail ( uint32_t  size,
Thumbnail thumbnail 
)

Get the thumbnail from the raw file

Parameters:
size the square size in px
thumbnail the thumbnail to extract into
Returns:
the error code

Definition at line 322 of file rawfile.cpp.

References _getThumbnail(), and listThumbnailSizes().

const std::vector< uint32_t > & OpenRaw::RawFile::listThumbnailSizes ( void   ) 

list the available thumbnail sizes

Definition at line 309 of file rawfile.cpp.

References _enumThumbnailSizes(), and OpenRaw::RawFile::Private::m_sizes.

Referenced by getThumbnail().

RawFile * OpenRaw::RawFile::newRawFile ( const char *  _filename,
RawFile::Type  _typeHint = OR_RAWFILE_TYPE_UNKNOWN 
) [static]

factory method to create the proper RawFile instance.

Parameters:
_filename the name of the file to load
_typeHint a hint on the type. Use UNKNOWN_TYPE if you want to let the library detect it for you.

Definition at line 135 of file rawfile.cpp.

References type().

RawFile * OpenRaw::RawFile::newRawFileFromMemory ( const uint8_t *  buffer,
uint32_t  len,
RawFile::Type  _typeHint = OR_RAWFILE_TYPE_UNKNOWN 
) [static]

factory method to create the proper RawFile instance from content

Parameters:
buffer the buffer to examine.
len the number of bytes in the length.
_typeHint a hint on the type. Use UNKNOWN_TYPE if you want to let the library detect it for you.

Definition at line 160 of file rawfile.cpp.

References type().

RawFile::Type OpenRaw::RawFile::type (  )  const

Accessor for the type

Definition at line 291 of file rawfile.cpp.

References OpenRaw::RawFile::Private::m_type.

Referenced by newRawFile(), and newRawFileFromMemory().

RawFile::TypeId OpenRaw::RawFile::typeId (  ) 

The RAW file type ID. Identify it if needed.

Todo:
figure how to make this const.

Definition at line 296 of file rawfile.cpp.

References OpenRaw::RawFile::Private::m_type_id.


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

Generated by  doxygen 1.6.2