#include <sstream>
#include "lux.h"
#include "api.h"
#include "error.h"
#include "luxparse.hpp"
Go to the source code of this file.
Classes | |
class | lux::random::RandomGenerator |
struct | IncludeInfo |
Namespaces | |
namespace | lux |
namespace | lux::random |
namespace | boost |
Defines | |
#define | YY_MAIN 0 |
#define | YY_NEVER_INTERACTIVE 1 |
Functions | |
void * | lux::AllocAligned (size_t size) |
void | lux::FreeAligned (void *) |
void | lux::random::init (int tn) |
float | lux::random::floatValue () |
unsigned long | lux::random::uintValue () |
float | lux::random::floatValueP () |
unsigned long | lux::random::uintValueP () |
void | luxInit () |
void | luxCleanup () |
bool | ParseFile (const char *filename) |
unsigned int | lux::DJBHash (const std::string &str) |
bool | lux::SolveLinearSystem2x2 (const float A[2][2], const float B[2], float x[2]) |
ImageData * | lux::ReadImage (const string &name) |
void | lux::WriteRGBAImage (const string &name, float *pixels, float *alpha, int xRes, int yRes, int totalXRes, int totalYRes, int xOffset, int yOffset) |
void | lux::WriteRGBAImageFloat (const string &name, float *pixels, float *alpha, int xRes, int yRes, int totalXRes, int totalYRes, int xOffset, int yOffset) |
void | lux::WriteIgiImage (const string &name, float *pixels, float *alpha, int xRes, int yRes, int totalXRes, int totalYRes, int xOffset, int yOffset) |
template<class T > | |
T | Lerp (float t, T v1, T v2) |
template<class T > | |
T | Clamp (T val, T low, T high) |
int | Mod (int a, int b) |
float | Radians (float deg) |
float | Degrees (float rad) |
float | Log2 (float x) |
int | Log2Int (float v) |
bool | IsPowerOf2 (int v) |
u_int | RoundUpPow2 (u_int v) |
int | Round2Int (double val) |
template<class T > | |
int | Float2Int (T val) |
template<class T > | |
int | Floor2Int (T val) |
template<class T > | |
int | Ceil2Int (T val) |
bool | Quadratic (float A, float B, float C, float *t0, float *t1) |
float | SmoothStep (float min, float max, float value) |
void | boost::assertion_failed (char const *expr, char const *function, char const *file, long line) |
void | add_string_char (char c) |
void | yyerror (const char *str) |
void | include_push (char *filename) |
void | include_pop (void) |
option nounput WHITESPACE[\t\0xa] | NUMBER ([0-9]+|(([0-9]+\.[0-9]*)|(\.[0-9]+)))([eE][-+]?[0-9]+)?IDENT[a-zA-Z_][a-zA-Z_0-9]*%x STR COMMENT INCL INCL_FILE%%Include |
Variables | |
boost::thread_specific_ptr < RandomGenerator > | lux::random::myGen |
static const float | lux::random::invUI = ((float)1.0/(float)4294967296.0) |
static RandomGenerator * | lux::random::PGen |
vector< IncludeInfo > | includeStack |
int | line_num |
int | str_pos |
< INCL > | WHITESPACE |
int Ceil2Int | ( | T | val | ) | [inline] |
Definition at line 402 of file luxlex.l.
Referenced by lux::ImageFilm::AddSample(), lux::MIPMapImpl< T, U >::EWA(), lux::FlexImageFilm::FlexImageFilm(), lux::ImageFilm::ImageFilm(), lux::IrregularSPD::IrregularSPD(), lux::SingleScattering::Li(), lux::EmissionIntegrator::Li(), and lux::FlexImageFilm::MergeSampleArray().
T Clamp | ( | T | val, | |
T | low, | |||
T | high | |||
) | [inline] |
Definition at line 329 of file luxlex.l.
Referenced by lux::Cone::Cone(), lux::ImageFilm::CreateFilm(), lux::FlexImageFilm::CreateFilm(), lux::Cylinder::Cylinder(), lux::VolumeGrid::D(), lux::Disk::Disk(), lux::FresnelDielectric::Evaluate(), lux::MatteTranslucent::GetBSDF(), lux::Matte::GetBSDF(), lux::CarPaint::GetBSDF(), lux::GridAccel::GridAccel(), lux::Hyperboloid::Hyperboloid(), lux::IrradianceCache::IndirectLo(), lux::LensComponent::LensComponent(), lux::MIPMapImpl< T, U >::MIPMapImpl(), lux::Paraboloid::Paraboloid(), lux::InfiniteAreaLightIS::Pdf(), lux::GridAccel::PosToVoxel(), lux::InfiniteAreaLightIS::Sample_L(), lux::Sphere::Sphere(), lux::SphericalTheta(), lux::MIPMapImpl< T, U >::texelInternal(), lux::MIPMapImpl< T, U >::triangle(), and lux::ImageFilm::WriteImage().
int Float2Int | ( | T | val | ) | [inline] |
Definition at line 387 of file luxlex.l.
Referenced by lux::MIPMapImpl< T, U >::EWA(), lux::InfiniteAreaLightIS::Pdf(), lux::GridAccel::PosToVoxel(), and lux::InfiniteAreaLightIS::Sample_L().
int Floor2Int | ( | T | val | ) | [inline] |
Definition at line 395 of file luxlex.l.
Referenced by lux::ImageFilm::AddSample(), lux::ERPTSampler::AddSample(), lux::SkyLight::ChromaticityToSpectrum(), lux::VolumeGrid::Density(), lux::UVTexture::Evaluate(), lux::MarbleTexture::Evaluate(), lux::DotsTexture< T >::Evaluate(), lux::Checkerboard3D< T >::Evaluate(), lux::Checkerboard2D< T >::Evaluate(), lux::MIPMapImpl< T, U >::EWA(), lux::RandomPixelSampler::GetNextPixel(), lux::LowdiscrepancyPixelSampler::GetNextPixel(), lux::ImageFilm::GetSampleExtent(), lux::FlexImageFilm::GetSampleExtent(), lux::IrregularSPD::IrregularSPD(), lux::SingleScattering::Li(), lux::ParticleTracingIntegrator::Li(), lux::MLTPathIntegrator::Li(), lux::BidirIntegrator::Li(), lux::ExPhotonIntegrator::LiInternal(), lux::MIPMapImpl< T, U >::Lookup(), lux::FlexImageFilm::MergeSampleArray(), lux::MIPMapImpl< T, U >::nearest(), lux::PhotonIntegrator::Preprocess(), lux::IGIIntegrator::Preprocess(), lux::ExPhotonIntegrator::Preprocess(), lux::MIPMapImpl< T, U >::resampleWeights(), lux::SpectrumWavelengths::Sample(), lux::SPD::sample(), lux::BSDF::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), lux::MIPMapImpl< T, U >::triangle(), update_Statistics(), lux::LuxGui::UpdateStatistics(), and lux::VegasPixelSampler::VegasPixelSampler().
void include_pop | ( | void | ) |
Definition at line 92 of file luxlex.l.
References YY_CURRENT_BUFFER, yy_delete_buffer(), and yy_switch_to_buffer().
bool IsPowerOf2 | ( | int | v | ) | [inline] |
Definition at line 360 of file luxlex.l.
Referenced by lux::Voxel::AddPrimitive(), lux::HaltonSampler::HaltonSampler(), lux::LDSampler::LDSampler(), and lux::MIPMapImpl< T, U >::MIPMapImpl().
T Lerp | ( | float | t, | |
T | v1, | |||
T | v2 | |||
) | [inline] |
Definition at line 326 of file luxlex.l.
Referenced by lux::ColorSystem::Constrain(), lux::VolumeGrid::Density(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::HighContrastOp::Map(), lux::NURBS::Refine(), lux::SpectrumWavelengths::Sample(), lux::SPD::sample(), and lux::Cylinder::Sample().
float Log2 | ( | float | x | ) | [inline] |
Definition at line 349 of file luxlex.l.
Referenced by lux::MIPMapImpl< T, U >::Lookup().
int Log2Int | ( | float | v | ) | [inline] |
Definition at line 352 of file luxlex.l.
Referenced by lux::MIPMapImpl< T, U >::MIPMapImpl(), lux::TaBRecKdTreeAccel::TaBRecKdTreeAccel(), and lux::UnsafeKdTreeAccel::UnsafeKdTreeAccel().
void luxCleanup | ( | ) |
Definition at line 84 of file api.cpp.
References luxCleanup().
Referenced by exit_cb(), luxCleanup(), main(), lux::LuxGui::OnExit(), and lux::NetworkRenderServerThread::run().
void luxInit | ( | ) |
Definition at line 403 of file api.cpp.
References initialized, LUX_ERROR, LUX_ILLSTATE, and luxError.
Referenced by main(), and lux::LuxGuiApp::OnInit().
int Mod | ( | int | a, | |
int | b | |||
) | [inline] |
Definition at line 332 of file luxlex.l.
Referenced by lux::MIPMapImpl< T, U >::MIPMapImpl(), and lux::MIPMapImpl< T, U >::texelInternal().
option nounput WHITESPACE [ \t\0xa] NUMBER | ( | [0-9] +| | ([0-9]+\.[0-9]*)|(\.[0-9]+) | ) |
bool ParseFile | ( | const char * | filename | ) |
Definition at line 27 of file parser.cpp.
References current_file, cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), line_num, LUX_NOFILE, LUX_SEVERE, luxError, cimg_library::cimg::strcmp(), yyin, and yyparse().
Referenced by Engine_Thread(), lux::LuxGui::EngineThread(), and engineThread().
bool Quadratic | ( | float | A, | |
float | B, | |||
float | C, | |||
float * | t0, | |||
float * | t1 | |||
) | [inline] |
Definition at line 409 of file luxlex.l.
Referenced by lux::Sphere::Intersect(), lux::Paraboloid::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Cylinder::Intersect(), lux::Cone::Intersect(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Cylinder::IntersectP(), and lux::Cone::IntersectP().
float Radians | ( | float | deg | ) | [inline] |
Definition at line 343 of file luxlex.l.
Referenced by lux::Cone::Cone(), lux::Cylinder::Cylinder(), lux::Disk::Disk(), lux::ExPhotonIntegrator::ExPhotonIntegrator(), lux::Hyperboloid::Hyperboloid(), lux::LensComponent::LensComponent(), lux::OrenNayar::OrenNayar(), lux::Paraboloid::Paraboloid(), lux::PerspectiveCamera::PerspectiveCamera(), lux::ProjectionLight::ProjectionLight(), lux::Sphere::Sphere(), and lux::SpotLight::SpotLight().
int Round2Int | ( | double | val | ) | [inline] |
Definition at line 377 of file luxlex.l.
Referenced by lux::GridAccel::GridAccel(), lux::TaBRecKdTreeAccel::TaBRecKdTreeAccel(), and lux::UnsafeKdTreeAccel::UnsafeKdTreeAccel().
Definition at line 363 of file luxlex.l.
Referenced by lux::HaltonSampler::HaltonSampler(), lux::IGIIntegrator::IGIIntegrator(), lux::LDSampler::LDSampler(), lux::MIPMapImpl< T, U >::MIPMapImpl(), lux::LDSampler::RoundSize(), and lux::HaltonSampler::RoundSize().
float SmoothStep | ( | float | min, | |
float | max, | |||
float | value | |||
) | [inline] |
Definition at line 424 of file luxlex.l.
Referenced by lux::IGIIntegrator::Li().
void yyerror | ( | const char * | str | ) |
Definition at line 90 of file luxparse.cpp.
References LUX_SEVERE, LUX_SYNTAX, and luxError.
vector<IncludeInfo> includeStack |
int line_num |
Definition at line 85 of file luxparse.cpp.
<INCL> WHITESPACE |