Blender V4.3
IESFile Class Reference

#include <ies.h>

Public Member Functions

 IESFile ()
 
 ~IESFile ()
 
int packed_size ()
 
void pack (float *data)
 
bool load (const string &ies)
 
void clear ()
 

Protected Types

enum  IESType { TYPE_A = 3 , TYPE_B = 2 , TYPE_C = 1 }
 

Protected Member Functions

bool parse (const string &ies)
 
bool process ()
 
void process_type_a ()
 
void process_type_b ()
 
void process_type_c ()
 

Protected Attributes

vector< floatv_angles
 
vector< floath_angles
 
vector< vector< float > > intensity
 
enum IESFile::IESType type
 

Detailed Description

Definition at line 13 of file util/ies.h.

Member Enumeration Documentation

◆ IESType

enum IESFile::IESType
protected
Enumerator
TYPE_A 
TYPE_B 
TYPE_C 

Definition at line 41 of file util/ies.h.

Constructor & Destructor Documentation

◆ IESFile()

IESFile::IESFile ( )
inline

Definition at line 15 of file util/ies.h.

◆ ~IESFile()

IESFile::~IESFile ( )

Definition at line 405 of file ies.cpp.

References clear().

Member Function Documentation

◆ clear()

void IESFile::clear ( )

Definition at line 31 of file ies.cpp.

References h_angles, and v_angles.

Referenced by LightManager::device_update_ies(), load(), and ~IESFile().

◆ load()

bool IESFile::load ( const string & ies)

Definition at line 21 of file ies.cpp.

References clear(), parse(), and process().

Referenced by TEST().

◆ pack()

void IESFile::pack ( float * data)

Definition at line 46 of file ies.cpp.

References __int_as_float, h_angles, and v_angles.

◆ packed_size()

int IESFile::packed_size ( )

Definition at line 38 of file ies.cpp.

References h_angles, and v_angles.

Referenced by LightManager::device_update_ies().

◆ parse()

bool IESFile::parse ( const string & ies)
protected

◆ process()

bool IESFile::process ( )
protected

Definition at line 375 of file ies.cpp.

References h_angles, M_PI_F, process_type_a(), process_type_b(), process_type_c(), TYPE_A, TYPE_B, TYPE_C, and v_angles.

Referenced by load().

◆ process_type_a()

void IESFile::process_type_a ( )
protected

Definition at line 291 of file ies.cpp.

References angle_close(), h_angles, and v_angles.

Referenced by process().

◆ process_type_b()

void IESFile::process_type_b ( )
protected

Definition at line 217 of file ies.cpp.

References angle_close(), h_angles, and v_angles.

Referenced by process().

◆ process_type_c()

void IESFile::process_type_c ( )
protected

Definition at line 325 of file ies.cpp.

References angle_close(), and h_angles.

Referenced by process().

Member Data Documentation

◆ h_angles

vector<float> IESFile::h_angles
protected

◆ intensity

vector<vector<float> > IESFile::intensity
protected

Definition at line 38 of file util/ies.h.

◆ type

enum IESFile::IESType IESFile::type
protected

◆ v_angles

vector<float> IESFile::v_angles
protected

Definition at line 35 of file util/ies.h.

Referenced by clear(), pack(), packed_size(), parse(), process(), process_type_a(), and process_type_b().


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