#ifndef RAWFORMAT_HEADER #define RAWFORMAT_HEADER 1 //////////////////////////////////////////////////////////// //! author="Charles Galambos" //! docentry="Image.Image IO" //! date="29/10/98" //! rcsid="$Id: rawFormat.hh,v 1.2 2000/02/16 14:12:27 ees1cg Exp $" //! file="amma/Image/VidIO/rawFormat.hh" //! example=exImgSeq.cc //! lib=VidIO #include "amma/DP/FileFormat.hh" #include "amma/Image.hh" #include "amma/RGBValue.hh" //! userlevel=Develop //: raw File format information. class FileFormatRawBodyC : public FileFormatBodyC { public: FileFormatRawBodyC(); //: Constructor. virtual const type_info &ProbeLoad(IStreamC &in,const type_info &obj_type) const; //: Is stream in std stream format ? virtual const type_info &ProbeLoad(const FilenameC &filename,IStreamC &in,const type_info &obj_type) const; //: Probe for load. virtual const type_info &ProbeSave(const FilenameC &filename,const type_info &obj_type,BooleanT forceFormat) const; //: Probe for Save. virtual DPIPortBaseC CreateInput(IStreamC &in,const type_info &obj_type) const; //: Create a input port for loading. // This creates a plain RGB stream. // Will create an Invalid port if not supported. virtual DPOPortBaseC CreateOutput(OStreamC &out,const type_info &obj_type) const; //: Create a output port for saving. // This creates a plain RGB stream. // Will create an Invalid port if not supported. virtual DPIPortBaseC CreateInput(const FilenameC &filename,const type_info &obj_type) const; //: Create a input port for loading from file 'filename'. // Will create an Invalid port if not supported.
virtual DPOPortBaseC CreateOutput(const FilenameC &filename,const type_info &obj_type) const; //: Create a output port for saving to file 'filename'.. // Will create an Invalid port if not supported.
virtual const type_info &DefaultType() const;
//: Get prefered IO type.
virtual IntT Priority() const { return -1; }
//: Find the priority of the format. the higher the better.
// Default is zero, use this if nothing better.
virtual BooleanT IsStream() const { return TRUE; }
//: Test if format is a fully streamable.
// i.e. check if you can read/write more than object object.
protected:
};
/////////////////////////////
//! userlevel=Advanced
//: Create an instance of a RGB File Format.
class FileFormatRawC
: public FileFormatC