Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ImageFile Class Reference

#include <imageFile.h>

Inheritance diagram for ImageFile:

TypedWritable TypedObject DestTextureImage PaletteImage SourceTextureImage TextureImage List of all members.

Public Member Functions

 ImageFile ()
void make_shadow_image (const string &basename)
bool is_size_known () const
int get_x_size () const
int get_y_size () const
bool has_num_channels () const
int get_num_channels () const
const TexturePropertiesget_properties () const
void clear_basic_properties ()
void update_properties (const TextureProperties &properties)
void set_filename (PaletteGroup *group, const string &basename)
void set_filename (const string &dirname, const string &basename)
const Filenameget_filename () const
const Filenameget_alpha_filename () const
int get_alpha_file_channel () const
bool exists () const
bool read (PNMImage &image) const
bool write (const PNMImage &image) const
void unlink ()
void update_egg_tex (EggTexture *egg_tex) const
void output_filename (ostream &out) const
virtual void write_datagram (BamWriter *writer, Datagram &datagram)
virtual int complete_pointers (TypedWritable **p_list, BamReader *manager)
virtual TypeHandle get_type () const

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Protected Member Functions

void fillin (DatagramIterator &scan, BamReader *manager)

Protected Attributes

TextureProperties _properties
Filename _filename
Filename _alpha_filename
int _alpha_file_channel
bool _size_known
int _x_size
int _y_size

Static Private Attributes

TypeHandle _type_handle

Constructor & Destructor Documentation

ImageFile::ImageFile  ) 
 

Definition at line 40 of file imageFile.cxx.

References _alpha_file_channel, _size_known, _x_size, and _y_size.


Member Function Documentation

void ImageFile::clear_basic_properties  ) 
 

Definition at line 143 of file imageFile.cxx.

References _properties, and TextureProperties::clear_basic().

Referenced by TextureImage::clear_source_basic_properties().

int ImageFile::complete_pointers TypedWritable **  p_list,
BamReader manager
[virtual]
 

Reimplemented from TypedWritable.

Reimplemented in PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 494 of file imageFile.cxx.

References _properties, TextureProperties::complete_pointers(), and TypedWritable::complete_pointers().

Referenced by TextureImage::complete_pointers(), SourceTextureImage::complete_pointers(), and PaletteImage::complete_pointers().

bool ImageFile::exists  )  const
 

Definition at line 278 of file imageFile.cxx.

References _alpha_filename, TextureProperties::_alpha_type, _filename, _properties, Filename::empty(), Filename::exists(), NULL, and TextureProperties::uses_alpha().

Referenced by TextureImage::get_preferred_source(), and PaletteImage::update_image().

void ImageFile::fillin DatagramIterator scan,
BamReader manager
[protected]
 

Reimplemented from TypedWritable.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 510 of file imageFile.cxx.

References _alpha_file_channel, _alpha_filename, _filename, _properties, Palettizer::_read_pi_version, _size_known, _x_size, _y_size, TextureProperties::fillin(), TypedWritable::fillin(), FilenameUnifier::get_bam_filename(), DatagramIterator::get_bool(), DatagramIterator::get_int32(), DatagramIterator::get_string(), and DatagramIterator::get_uint8().

Referenced by TextureImage::fillin(), SourceTextureImage::fillin(), PaletteImage::fillin(), and DestTextureImage::fillin().

int ImageFile::get_alpha_file_channel  )  const
 

Definition at line 266 of file imageFile.cxx.

References _alpha_file_channel.

Referenced by TextureImage::complete_pointers().

const Filename & ImageFile::get_alpha_filename  )  const
 

Definition at line 251 of file imageFile.cxx.

References _alpha_filename.

Referenced by TextureImage::complete_pointers().

TypeHandle ImageFile::get_class_type void   )  [inline, static]
 

Reimplemented from TypedObject.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 90 of file imageFile.h.

References _type_handle.

Referenced by get_type(), TextureImage::init_type(), SourceTextureImage::init_type(), PaletteImage::init_type(), and DestTextureImage::init_type().

const Filename & ImageFile::get_filename  )  const
 

Definition at line 238 of file imageFile.cxx.

References _filename.

Referenced by TextureImage::complete_pointers(), DestTextureImage::copy_if_stale(), TextureImage::copy_unplaced(), PaletteImage::get_image(), TextureImage::get_preferred_source(), TextureImage::is_newer_than(), PaletteImage::optimal_resize(), and PaletteImage::update_image().

int ImageFile::get_num_channels  )  const
 

Definition at line 120 of file imageFile.cxx.

References _properties, and TextureProperties::get_num_channels().

Referenced by DestTextureImage::copy_if_stale(), TextureReference::from_egg(), TextureImage::post_txa_file(), and TextureImage::write_scale_info().

const TextureProperties & ImageFile::get_properties  )  const
 

Definition at line 130 of file imageFile.cxx.

References _properties.

Referenced by TexturePlacement::get_properties(), TextureImage::pre_txa_file(), and TextureImage::write_source_pathnames().

virtual TypeHandle ImageFile::get_type void   )  const [inline, virtual]
 

Reimplemented from TypedWritable.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 98 of file imageFile.h.

References get_class_type().

int ImageFile::get_x_size  )  const
 

Definition at line 83 of file imageFile.cxx.

References _x_size, is_size_known(), and nassertr.

Referenced by TexturePlacement::compute_size_from_uvs(), TexturePlacement::compute_tex_matrix(), DestTextureImage::copy_if_stale(), PaletteImage::count_coverage(), PaletteImage::count_utilization(), TexturePlacement::fill_image(), PaletteImage::get_image(), TextureImage::get_preferred_source(), TxaLine::match_texture(), TextureImage::post_txa_file(), TextureImage::write_scale_info(), and TextureImage::write_source_pathnames().

int ImageFile::get_y_size  )  const
 

Definition at line 96 of file imageFile.cxx.

References _y_size, is_size_known(), and nassertr.

Referenced by TexturePlacement::compute_size_from_uvs(), TexturePlacement::compute_tex_matrix(), DestTextureImage::copy_if_stale(), PaletteImage::count_coverage(), PaletteImage::count_utilization(), TexturePlacement::fill_image(), PaletteImage::get_image(), TextureImage::get_preferred_source(), TxaLine::match_texture(), TextureImage::post_txa_file(), TextureImage::write_scale_info(), and TextureImage::write_source_pathnames().

bool ImageFile::has_num_channels  )  const
 

Definition at line 108 of file imageFile.cxx.

References _properties, and TextureProperties::has_num_channels().

void ImageFile::init_type void   )  [inline, static]
 

Reimplemented from TypedWritable.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 93 of file imageFile.h.

References _type_handle, TypedObject::get_class_type(), TypedWritable::init_type(), and register_type().

Referenced by ConfigureFn(), TextureImage::init_type(), SourceTextureImage::init_type(), PaletteImage::init_type(), and DestTextureImage::init_type().

bool ImageFile::is_size_known  )  const
 

Definition at line 71 of file imageFile.cxx.

References _size_known.

Referenced by TexturePlacement::determine_size(), get_x_size(), get_y_size(), TextureImage::write_scale_info(), and TextureImage::write_source_pathnames().

void ImageFile::make_shadow_image const string &  basename  ) 
 

Definition at line 57 of file imageFile.cxx.

References TextureProperties::_alpha_type, TextureProperties::_color_type, _properties, Palettizer::_shadow_alpha_type, Palettizer::_shadow_color_type, Palettizer::_shadow_dirname, pal, and set_filename().

Referenced by PaletteImage::PaletteImage(), and PaletteImage::setup_shadow_image().

void ImageFile::output_filename ostream &  out  )  const
 

Definition at line 458 of file imageFile.cxx.

References _alpha_filename, _filename, _properties, Filename::empty(), FilenameUnifier::make_user_filename(), and TextureProperties::uses_alpha().

Referenced by operator<<(), and TextureImage::write_source_pathnames().

bool ImageFile::read PNMImage image  )  const
 

Definition at line 301 of file imageFile.cxx.

References _alpha_file_channel, _alpha_filename, TextureProperties::_alpha_type, TextureProperties::_color_type, _filename, _properties, Filename::empty(), Filename::exists(), PNMImage::get_alpha(), PNMImage::get_channel_val(), PNMImage::get_gray(), PNMImageHeader::get_num_channels(), PNMImageHeader::get_x_size(), PNMImageHeader::get_y_size(), image, FilenameUnifier::make_user_filename(), nassertr, nout, PNMImage::read(), PNMImageHeader::set_type(), x, and y.

Referenced by PaletteImage::get_image(), and TextureImage::read_source_image().

void ImageFile::set_filename const string &  dirname,
const string &  basename
 

Definition at line 207 of file imageFile.cxx.

References _alpha_filename, TextureProperties::_alpha_type, TextureProperties::_color_type, _filename, _properties, Filename, Filename::get_fullpath_wo_extension(), PNMFileType::get_suggested_extension(), NULL, and Filename::set_extension().

void ImageFile::set_filename PaletteGroup group,
const string &  basename
 

Definition at line 168 of file imageFile.cxx.

References Palettizer::_map_dirname, PaletteGroup::get_dirname(), NULL, and pal.

Referenced by DestTextureImage::DestTextureImage(), make_shadow_image(), and PaletteImage::PaletteImage().

void ImageFile::unlink  ) 
 

Definition at line 417 of file imageFile.cxx.

References _alpha_filename, _filename, Filename::empty(), Filename::exists(), FilenameUnifier::make_user_filename(), nout, and Filename::unlink().

Referenced by PaletteImage::remove_image().

void ImageFile::update_egg_tex EggTexture egg_tex  )  const
 

Definition at line 434 of file imageFile.cxx.

References _alpha_file_channel, _alpha_filename, _filename, _properties, EggTexture::clear_alpha_file_channel(), EggTexture::clear_alpha_filename(), Filename::empty(), FilenameUnifier::make_egg_filename(), nassertv, NULL, EggTexture::set_alpha_file_channel(), EggTexture::set_alpha_filename(), EggFilenameNode::set_filename(), TextureProperties::update_egg_tex(), and TextureProperties::uses_alpha().

Referenced by TextureReference::update_egg().

void ImageFile::update_properties const TextureProperties properties  ) 
 

Definition at line 154 of file imageFile.cxx.

References _properties, and TextureProperties::update_properties().

Referenced by TextureReference::apply_properties_to_source(), and TextureReference::from_egg().

bool ImageFile::write const PNMImage image  )  const
 

Definition at line 366 of file imageFile.cxx.

References _alpha_filename, TextureProperties::_alpha_type, TextureProperties::_color_type, _filename, _properties, Filename::empty(), Filename::exists(), image, Filename::make_dir(), FilenameUnifier::make_user_filename(), nassertr, nout, NULL, PNMImage::remove_alpha(), PNMImage::set_gray_val(), Filename::unlink(), PNMImage::write(), x, and y.

Referenced by DestTextureImage::copy(), and PaletteImage::update_image().

void ImageFile::write_datagram BamWriter writer,
Datagram datagram
[virtual]
 

Reimplemented from TypedWritable.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 473 of file imageFile.cxx.

References _alpha_file_channel, _alpha_filename, _filename, _properties, _size_known, _x_size, _y_size, Datagram::add_bool(), Datagram::add_int32(), Datagram::add_string(), Datagram::add_uint8(), FilenameUnifier::make_bam_filename(), TextureProperties::write_datagram(), TypedWritable::write_datagram(), and writer().

Referenced by TextureImage::write_datagram(), SourceTextureImage::write_datagram(), PaletteImage::write_datagram(), and DestTextureImage::write_datagram().


Member Data Documentation

int ImageFile::_alpha_file_channel [protected]
 

Definition at line 75 of file imageFile.h.

Referenced by fillin(), get_alpha_file_channel(), ImageFile(), read(), SourceTextureImage::SourceTextureImage(), update_egg_tex(), and write_datagram().

Filename ImageFile::_alpha_filename [protected]
 

Definition at line 74 of file imageFile.h.

Referenced by exists(), fillin(), get_alpha_filename(), output_filename(), read(), SourceTextureImage::read_header(), set_filename(), SourceTextureImage::SourceTextureImage(), unlink(), update_egg_tex(), write(), and write_datagram().

Filename ImageFile::_filename [protected]
 

Definition at line 73 of file imageFile.h.

Referenced by exists(), fillin(), get_filename(), output_filename(), read(), SourceTextureImage::read_header(), set_filename(), SourceTextureImage::SourceTextureImage(), unlink(), update_egg_tex(), write(), and write_datagram().

TextureProperties ImageFile::_properties [protected]
 

Definition at line 72 of file imageFile.h.

Referenced by clear_basic_properties(), complete_pointers(), TextureImage::consider_alpha(), TextureImage::consider_grayscale(), DestTextureImage::DestTextureImage(), exists(), fillin(), PaletteImage::get_image(), get_num_channels(), get_properties(), has_num_channels(), make_shadow_image(), output_filename(), PaletteImage::PaletteImage(), TextureImage::post_txa_file(), TextureImage::pre_txa_file(), read(), SourceTextureImage::read_header(), set_filename(), update_egg_tex(), update_properties(), write(), and write_datagram().

bool ImageFile::_size_known [protected]
 

Definition at line 77 of file imageFile.h.

Referenced by DestTextureImage::DestTextureImage(), fillin(), SourceTextureImage::get_size(), ImageFile(), is_size_known(), PaletteImage::PaletteImage(), TextureImage::post_txa_file(), SourceTextureImage::read_header(), and write_datagram().

TypeHandle ImageFile::_type_handle [static, private]
 

Reimplemented from TypedWritable.

Reimplemented in DestTextureImage, PaletteImage, SourceTextureImage, and TextureImage.

Definition at line 32 of file imageFile.cxx.

Referenced by get_class_type(), and init_type().

int ImageFile::_x_size [protected]
 

Definition at line 78 of file imageFile.h.

Referenced by PaletteImage::ClearedRegion::ClearedRegion(), DestTextureImage::copy(), DestTextureImage::DestTextureImage(), fillin(), PaletteImage::find_hole(), get_x_size(), ImageFile(), PaletteImage::optimal_resize(), PaletteImage::PaletteImage(), TextureImage::post_txa_file(), SourceTextureImage::read_header(), PaletteImage::resize_image(), and write_datagram().

int ImageFile::_y_size [protected]
 

Definition at line 78 of file imageFile.h.

Referenced by PaletteImage::ClearedRegion::ClearedRegion(), DestTextureImage::copy(), DestTextureImage::DestTextureImage(), fillin(), PaletteImage::find_hole(), get_y_size(), ImageFile(), PaletteImage::optimal_resize(), PaletteImage::PaletteImage(), TextureImage::post_txa_file(), SourceTextureImage::read_header(), PaletteImage::resize_image(), and write_datagram().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 01:01:10 2003 for Panda-Tool by doxygen1.3