// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _AlienImage_HeaderFile
#define _AlienImage_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Handle_Image_Image_HeaderFile
#include <Handle_Image_Image.hxx>
#endif
#ifndef _Standard_CString_HeaderFile
#include <Standard_CString.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
class TCollection_AsciiString;
class Image_Image;
class OSD_File;
class AlienImage_AlienImage;
class AlienImage_AlienImageData;
class AlienImage_AlienUserImage;
class AlienImage_SunRFAlienData;
class AlienImage_SunRFAlienImage;
class AlienImage_EuclidAlienData;
class AlienImage_EuclidAlienImage;
class AlienImage_SGIRGBAlienData;
class AlienImage_SGIRGBAlienImage;
class AlienImage_X11XWDAlienData;
class AlienImage_XAlienImage;
class AlienImage_AidaAlienData;
class AlienImage_AidaAlienImage;
class AlienImage_MemoryOperations;
class AlienImage_BMPAlienData;
class AlienImage_GIFAlienData;
class AlienImage_BMPAlienImage;
class AlienImage_GIFAlienImage;


//! This package allows importation of images <br>
//!          from some other format into CAS.CADE format. <br>
class AlienImage  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  
  Standard_EXPORT   static  Standard_Boolean CreateImage(const TCollection_AsciiString& theFileName,Handle(Image_Image)& theImage) ;
  
  Standard_EXPORT   static  Standard_Boolean CreateImage(const Standard_CString theFileName,Handle(Image_Image)& theImage) ;
  
  Standard_EXPORT   static  Standard_Boolean CreateImage(OSD_File& theFile,Handle(Image_Image)& theImage) ;
  //! Used by plotter drivers <br>
  Standard_EXPORT   static  Standard_Boolean LoadImageFile(const Standard_CString anImageFile,Handle(Image_Image)& anImage,Standard_Integer& aWidth,Standard_Integer& aHeight) ;





protected:





private:




friend class AlienImage_AlienImage;
friend class AlienImage_AlienImageData;
friend class AlienImage_AlienUserImage;
friend class AlienImage_SunRFAlienData;
friend class AlienImage_SunRFAlienImage;
friend class AlienImage_EuclidAlienData;
friend class AlienImage_EuclidAlienImage;
friend class AlienImage_SGIRGBAlienData;
friend class AlienImage_SGIRGBAlienImage;
friend class AlienImage_X11XWDAlienData;
friend class AlienImage_XAlienImage;
friend class AlienImage_AidaAlienData;
friend class AlienImage_AidaAlienImage;
friend class AlienImage_MemoryOperations;
friend class AlienImage_BMPAlienData;
friend class AlienImage_GIFAlienData;
friend class AlienImage_BMPAlienImage;
friend class AlienImage_GIFAlienImage;

};





// other Inline functions and methods (like "C++: function call" methods)


#endif
