luxrays::utils::Film Class Reference

#include <film.h>

Inheritance diagram for luxrays::utils::Film:
luxrays::utils::LuxRaysFilm

List of all members.

Public Member Functions

 Film (Context *context, const unsigned int w, const unsigned int h)
virtual ~Film ()
virtual void Init (const unsigned int w, const unsigned int h)
virtual void InitGammaTable (const float gamma=2.2f)
void SetFilterType (const FilterType filter)
const ToneMapParamsGetToneMapParams () const
void SetToneMapParams (const ToneMapParams &params)
void AddFilm (const std::string &filmFile)
void SaveFilm (const std::string &filmFile)
void StartSampleTime ()
virtual void Reset ()
virtual void UpdateScreenBuffer ()=0
virtual const float * GetScreenBuffer () const =0
virtual SampleBufferGetFreeSampleBuffer ()=0
virtual void FreeSampleBuffer (SampleBuffer *sampleBuffer)=0
virtual void SplatSampleBuffer (const bool preview, SampleBuffer *sampleBuffer)
unsigned int GetWidth ()
unsigned int GetHeight ()
unsigned int GetTotalSampleCount ()
double GetTotalTime ()
double GetAvgSampleSec ()
virtual void Save (const std::string &fileName)=0

Protected Member Functions

void SaveImpl (const std::string &fileName)
float Radiance2PixelFloat (const float x) const
Spectrum Radiance2Pixel (const Spectrum &c) const
virtual const SampleFrameBufferGetSampleFrameBuffer ()=0
virtual void AddSampleFrameBuffer (const SampleFrameBuffer *sfb)=0

Protected Attributes

Contextctx
unsigned int width
unsigned int height
unsigned int pixelCount
unsigned int statsTotalSampleCount
double statsStartSampleTime
double statsAvgSampleSec
float gammaTable [GAMMA_TABLE_SIZE]
FilterType filterType
ToneMapParamstoneMapParams

Detailed Description

Definition at line 53 of file film.h.


Constructor & Destructor Documentation

luxrays::utils::Film::Film ( Context context,
const unsigned int  w,
const unsigned int  h 
) [inline]

Definition at line 55 of file film.h.

References ctx, luxrays::FILTER_GAUSSIAN, filterType, Init(), InitGammaTable(), and toneMapParams.

virtual luxrays::utils::Film::~Film (  )  [inline, virtual]

Definition at line 64 of file film.h.

References toneMapParams.


Member Function Documentation

void luxrays::utils::Film::AddFilm ( const std::string &  filmFile  )  [inline]
virtual void luxrays::utils::Film::AddSampleFrameBuffer ( const SampleFrameBuffer sfb  )  [protected, pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

Referenced by AddFilm().

virtual void luxrays::utils::Film::FreeSampleBuffer ( SampleBuffer sampleBuffer  )  [pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

double luxrays::utils::Film::GetAvgSampleSec (  )  [inline]

Definition at line 189 of file film.h.

References GetTotalTime(), and statsTotalSampleCount.

virtual SampleBuffer* luxrays::utils::Film::GetFreeSampleBuffer (  )  [pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

unsigned int luxrays::utils::Film::GetHeight (  )  [inline]

Definition at line 184 of file film.h.

References height.

virtual const SampleFrameBuffer* luxrays::utils::Film::GetSampleFrameBuffer (  )  [protected, pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

Referenced by SaveFilm(), and SaveImpl().

virtual const float* luxrays::utils::Film::GetScreenBuffer (  )  const [pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

Referenced by SaveImpl().

const ToneMapParams* luxrays::utils::Film::GetToneMapParams (  )  const [inline]

Definition at line 90 of file film.h.

References toneMapParams.

unsigned int luxrays::utils::Film::GetTotalSampleCount (  )  [inline]

Definition at line 185 of file film.h.

References statsTotalSampleCount.

double luxrays::utils::Film::GetTotalTime (  )  [inline]

Definition at line 186 of file film.h.

References statsStartSampleTime, and luxrays::WallClockTime().

Referenced by GetAvgSampleSec().

unsigned int luxrays::utils::Film::GetWidth (  )  [inline]

Definition at line 183 of file film.h.

References width.

virtual void luxrays::utils::Film::Init ( const unsigned int  w,
const unsigned int  h 
) [inline, virtual]
virtual void luxrays::utils::Film::InitGammaTable ( const float  gamma = 2.2f  )  [inline, virtual]

Reimplemented in luxrays::utils::LuxRaysFilm.

Definition at line 79 of file film.h.

References luxrays::Clamp(), GAMMA_TABLE_SIZE, and gammaTable.

Referenced by Film().

Spectrum luxrays::utils::Film::Radiance2Pixel ( const Spectrum c  )  const [inline, protected]
float luxrays::utils::Film::Radiance2PixelFloat ( const float  x  )  const [inline, protected]

Definition at line 277 of file film.h.

References luxrays::Clamp(), luxrays::Floor2UInt(), GAMMA_TABLE_SIZE, and gammaTable.

Referenced by Radiance2Pixel().

virtual void luxrays::utils::Film::Reset (  )  [inline, virtual]
virtual void luxrays::utils::Film::Save ( const std::string &  fileName  )  [pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.

void luxrays::utils::Film::SaveFilm ( const std::string &  filmFile  )  [inline]
void luxrays::utils::Film::SaveImpl ( const std::string &  fileName  )  [inline, protected]
void luxrays::utils::Film::SetFilterType ( const FilterType  filter  )  [inline]

Definition at line 86 of file film.h.

References filterType.

void luxrays::utils::Film::SetToneMapParams ( const ToneMapParams params  )  [inline]

Definition at line 91 of file film.h.

References luxrays::ToneMapParams::Copy(), and toneMapParams.

virtual void luxrays::utils::Film::SplatSampleBuffer ( const bool  preview,
SampleBuffer sampleBuffer 
) [inline, virtual]

Reimplemented in luxrays::utils::LuxRaysFilm.

Definition at line 178 of file film.h.

References luxrays::SampleBuffer::GetSampleCount(), and statsTotalSampleCount.

void luxrays::utils::Film::StartSampleTime (  )  [inline]

Definition at line 163 of file film.h.

References statsStartSampleTime, and luxrays::WallClockTime().

virtual void luxrays::utils::Film::UpdateScreenBuffer (  )  [pure virtual]

Implemented in luxrays::utils::LuxRaysFilm.


Member Data Documentation

Definition at line 303 of file film.h.

Referenced by Film(), SetFilterType(), and luxrays::utils::LuxRaysFilm::SplatSampleBuffer().

float luxrays::utils::Film::gammaTable[GAMMA_TABLE_SIZE] [protected]

Definition at line 301 of file film.h.

Referenced by InitGammaTable(), and Radiance2PixelFloat().

unsigned int luxrays::utils::Film::height [protected]

Definition at line 295 of file film.h.

Referenced by AddFilm(), GetHeight(), Init(), SaveFilm(), and SaveImpl().

unsigned int luxrays::utils::Film::pixelCount [protected]

Definition at line 296 of file film.h.

Referenced by AddFilm(), Init(), and SaveFilm().

Definition at line 299 of file film.h.

Referenced by Init(), and Reset().

Definition at line 299 of file film.h.

Referenced by GetTotalTime(), Init(), Reset(), and StartSampleTime().

Definition at line 298 of file film.h.

Referenced by GetAvgSampleSec(), GetTotalSampleCount(), Init(), Reset(), and SplatSampleBuffer().

unsigned int luxrays::utils::Film::width [protected]

Definition at line 295 of file film.h.

Referenced by AddFilm(), GetWidth(), Init(), SaveFilm(), and SaveImpl().


The documentation for this class was generated from the following file:
Generated on Sat Aug 21 14:06:21 2010 for LuxRays by  doxygen 1.6.3