Open PaperOpt
LightSource Class Reference

#include <LightSource.h>

List of all members.

Public Member Functions

 LightSource (Distributions::Distribution *pDistTarget, Distributions::Distribution *pDistDirection, V3< float > origin, int polVal, float polarizationValue, int noOfWp, vector< float > &rLambdas, vector< float > &rLambdaWeights)
virtual ~LightSource ()
 LightSource ()
virtual int Process (WavePacket &wp, float lam)
int GetNumber ()

Public Attributes

vector< float > mLambda
vector< float > mLambdaWeights
int nrWavePackets

Constructor & Destructor Documentation

LightSource::LightSource ( Distributions::Distribution pDistTarget,
Distributions::Distribution pDistDirection,
V3< float >  origin,
int  polVal,
float  polarizationValue,
int  noOfWp,
vector< float > &  rLambdas,
vector< float > &  rLambdaWeights 
)

Constructor.

Parameters:
pDistTargetthis distribution calculates where on the surface the wave packet is generated. this distribution should return a V3<double>.
pDistDirectionthis distribution calculates what the direction wave packets will have when generated. this distribution should return a V3<double>.
rOrigina vector<float> containing theta, phi and distance of the light source.
polVal1 if the lightsource emits polarized light 0 if not.
polarizationValuethe polarization of the light source.
noOfWpthe number of wave packets.
rLambdasthe wavelengths of the light source.
rLambdaWeightsweights for wavelengths. These will be normalized.

Here is the call graph for this function:

LightSource::~LightSource ( ) [virtual]
LightSource::LightSource ( )

Member Function Documentation

int LightSource::GetNumber ( ) [inline]
int LightSource::Process ( WavePacket wp,
float  lam 
) [virtual]

Generates the wave packet according to light source distribution. Initialise wp's position, direction, polarisation, and relative energy.

Parameters:
wpWave pascket to be intialised
lamWavelength to be simulated

Here is the call graph for this function:


Member Data Documentation

vector<float> LightSource::mLambda

The documentation for this class was generated from the following files: