00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef CONFIG_PNMIMAGETYPES_H
00016 #define CONFIG_PNMIMAGETYPES_H
00017
00018 #include "pandabase.h"
00019
00020 #ifdef HAVE_PNG
00021
00022
00023
00024 #include <png.h>
00025 #endif
00026
00027 #include "notifyCategoryProxy.h"
00028 #include "configVariableInt.h"
00029 #include "configVariableString.h"
00030 #include "configVariableBool.h"
00031 #include "configVariableEnum.h"
00032 #include "sgi.h"
00033
00034 NotifyCategoryDecl(pnmimage_sgi, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00035 NotifyCategoryDecl(pnmimage_tiff, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00036 NotifyCategoryDecl(pnmimage_tga, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00037 NotifyCategoryDecl(pnmimage_img, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00038 NotifyCategoryDecl(pnmimage_soft, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00039 NotifyCategoryDecl(pnmimage_bmp, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00040 NotifyCategoryDecl(pnmimage_jpg, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00041 NotifyCategoryDecl(pnmimage_png, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00042 NotifyCategoryDecl(pnmimage_pnm, EXPCL_PANDA_PNMIMAGETYPES, EXPTP_PANDA_PNMIMAGETYPES);
00043
00044 enum SGIStorageType {
00045 SST_rle = STORAGE_RLE,
00046 SST_verbatim = STORAGE_VERBATIM,
00047 };
00048
00049 EXPCL_PANDA_PNMIMAGETYPES ostream &operator << (ostream &out, SGIStorageType sst);
00050 EXPCL_PANDA_PNMIMAGETYPES istream &operator >> (istream &in, SGIStorageType &sst);
00051
00052 extern ConfigVariableEnum<SGIStorageType> sgi_storage_type;
00053 extern ConfigVariableString sgi_imagename;
00054 extern ConfigVariableBool tga_rle;
00055 extern ConfigVariableBool tga_colormap;
00056 extern ConfigVariableBool tga_grayscale;
00057
00058 extern ConfigVariableInt jpeg_quality;
00059
00060 extern ConfigVariableInt bmp_bpp;
00061
00062 enum IMGHeaderType {
00063 IHT_none,
00064 IHT_short,
00065 IHT_long,
00066 };
00067
00068 EXPCL_PANDA_PNMIMAGETYPES ostream &operator << (ostream &out, IMGHeaderType iht);
00069 EXPCL_PANDA_PNMIMAGETYPES istream &operator >> (istream &in, IMGHeaderType &iht);
00070
00071 extern ConfigVariableEnum<IMGHeaderType> img_header_type;
00072 extern ConfigVariableInt img_size;
00073
00074 extern EXPCL_PANDA_PNMIMAGETYPES void init_libpnmimagetypes();
00075
00076 #endif