Public Member Functions | |
ImageFilm (int xres, int yres, Filter *filt, const float crop[4], const string &filename, bool premult, int wf) | |
~ImageFilm () | |
void | AddSample (const Sample &sample, const Ray &ray, const Spectrum &L, float alpha) |
void | GetSampleExtent (int *xstart, int *xend, int *ystart, int *yend) const |
void | WriteImage () |
Private Attributes | |
Filter * | filter |
int | writeFrequency |
int | sampleCount |
string | filename |
bool | premultiplyAlpha |
float | cropWindow [4] |
int | xPixelStart |
int | yPixelStart |
int | xPixelCount |
int | yPixelCount |
BlockedArray< Pixel > * | pixels |
float * | filterTable |
Classes | |
struct | Pixel |
Definition at line 32 of file image.cpp.
ImageFilm::ImageFilm | ( | int | xres, | |
int | yres, | |||
Filter * | filt, | |||
const float | crop[4], | |||
const string & | filename, | |||
bool | premult, | |||
int | wf | |||
) |
Definition at line 69 of file image.cpp.
References Ceil2Int(), cropWindow, Filter::Evaluate(), filename, filter, FILTER_TABLE_SIZE, filterTable, memcpy(), pixels, premultiplyAlpha, sampleCount, writeFrequency, xPixelCount, xPixelStart, Film::xResolution, Filter::xWidth, yPixelCount, yPixelStart, Film::yResolution, and Filter::yWidth.
Referenced by CreateFilm().
ImageFilm::~ImageFilm | ( | ) | [inline] |
void ImageFilm::AddSample | ( | const Sample & | sample, | |
const Ray & | ray, | |||
const Spectrum & | L, | |||
float | alpha | |||
) | [virtual] |
Implements Film.
Definition at line 103 of file image.cpp.
References Spectrum::AddWeighted(), ImageFilm::Pixel::alpha, Ceil2Int(), filter, FILTER_TABLE_SIZE, filterTable, Floor2Int(), Sample::imageX, Sample::imageY, Filter::invXWidth, Filter::invYWidth, ImageFilm::Pixel::L, sampleCount, ImageFilm::Pixel::weightSum, writeFrequency, WriteImage(), xPixelCount, xPixelStart, Filter::xWidth, yPixelCount, yPixelStart, and Filter::yWidth.
void ImageFilm::GetSampleExtent | ( | int * | xstart, | |
int * | xend, | |||
int * | ystart, | |||
int * | yend | |||
) | const [virtual] |
Implements Film.
Definition at line 148 of file image.cpp.
References filter, Floor2Int(), xPixelCount, xPixelStart, Filter::xWidth, yPixelCount, yPixelStart, and Filter::yWidth.
void ImageFilm::WriteImage | ( | ) | [virtual] |
Implements Film.
Definition at line 157 of file image.cpp.
References Clamp(), filename, INFINITY, premultiplyAlpha, WriteRGBAImage(), xPixelCount, xPixelStart, Film::xResolution, yPixelCount, yPixelStart, and Film::yResolution.
Referenced by AddSample().
Filter* ImageFilm::filter [private] |
Definition at line 51 of file image.cpp.
Referenced by AddSample(), GetSampleExtent(), ImageFilm(), and ~ImageFilm().
int ImageFilm::writeFrequency [private] |
int ImageFilm::sampleCount [private] |
string ImageFilm::filename [private] |
bool ImageFilm::premultiplyAlpha [private] |
float ImageFilm::cropWindow[4] [private] |
int ImageFilm::xPixelStart [private] |
Definition at line 56 of file image.cpp.
Referenced by AddSample(), GetSampleExtent(), ImageFilm(), and WriteImage().
int ImageFilm::yPixelStart [private] |
Definition at line 56 of file image.cpp.
Referenced by AddSample(), GetSampleExtent(), ImageFilm(), and WriteImage().
int ImageFilm::xPixelCount [private] |
Definition at line 56 of file image.cpp.
Referenced by AddSample(), GetSampleExtent(), ImageFilm(), and WriteImage().
int ImageFilm::yPixelCount [private] |
Definition at line 56 of file image.cpp.
Referenced by AddSample(), GetSampleExtent(), ImageFilm(), and WriteImage().
BlockedArray<Pixel>* ImageFilm::pixels [private] |
float* ImageFilm::filterTable [private] |