Image


class Image
{
  public:

    Image();

    Image(String^ filename,
          bool useEmbeddedColorManagement=false);

    Image(Image^ Copy);

    virtual ~Image();


    property unsigned Flags
    {
     unsigned get();
    }

    unsigned FrameCount(System::Guid dimensionID);

    property unsigned FrameDimensionsCount
    {
     unsigned get();
    }

    property unsigned Height
    {
        unsigned get();
    }

    property double HorizontalResolution
    {
	double get();
    }

    Image^ GetThumbnailImage(unsigned thumbWidth,
                             unsigned thumbHeight);

    property PointF PhysicalDimensions
    {
     PointF get();
    }

    property unsigned PixelFormat
    {
     unsigned get();
    }

    property ImageType Type
    {
     ImageType get();
    }

    property double VerticalResolution
    {
    	double get();
    }

    property unsigned Width
    {
	unsigned get();
    }

    void RotateFlip(unsigned rotateFlipType);

    void Save(String^ filename,
              Guid clsidEncoder);

    void Save(String^ filename,
              Guid clsidEncoder,
              EncoderParameters^ encoderParams);

    void SaveAdd(EncoderParameters^ encoderParams);

    void SaveAdd(Image^ newImage,
                 EncoderParameters^ encoderParams);

    void SelectActiveFrame(System::Guid dimensionID, ,
                           unsigned frameIndex);
};