|
LightWrap++
AC++wrapperfortheLightWave3DSDK
|
contain Carbon specific code for the OSX XCode version platform_carbon.cpp lwpp More...
Namespaces | |
| namespace | lw10 |
| namespace | lwsdk10 |
| namespace | LWSDK95_1 |
Typedefs | |
| typedef std::auto_ptr < LWNodeInput > | auto_NodeInput |
| Helper declaration for node member variables. | |
| typedef std::auto_ptr < LWNodeOutput > | auto_NodeOutput |
| Helper declaration for node member variables. | |
| typedef std::auto_ptr< VParm > | auto_VParm |
| typedef std::set< int > | BufferSet |
| typedef HandlerList::iterator | HandlerIterator |
| typedef std::vector < SimpleHandler * > | HandlerList |
| typedef struct lwpp::st_lwcolorspacefuncs | LWColorSpaceFuncs |
| typedef void | LWPixelConversionAlphaFunc (struct st_lwimagelookup *, float *, float *) |
| typedef void | LWPixelConversionRGBFunc (struct st_lwimagelookup *, float *, float *) |
| typedef Matrix4x4< double > | Matrix4x4d |
| typedef Matrix4x4< float > | Matrix4x4f |
| typedef pathList::const_iterator | pathCIterator |
| typedef pathList::iterator | pathIterator |
| typedef std::deque< std::string > | pathList |
| typedef PluginList::iterator | PluginIterator |
| typedef std::vector< ServerRecord > | PluginList |
| typedef Point3< double > | Point3d |
| typedef Point3< float > | Point3f |
| typedef void | SimpleHandler () |
| typedef Vector3< double > | Vector3d |
| typedef Vector3< float > | Vector3f |
Enumerations | |
| enum | { ID_PSEL = 0x0800, ID_TYPE, ID_TEST } |
| enum | { LW10PFF_MULTITHREADED = 1<<0, LW10PFF_EVERYPIXEL = 1<<1, LW10PFF_BEFOREVOLUME = 1<<2, LW10PFF_RAYTRACE = 1<<3 } |
| enum | LWColorSpaceType { lwcst_viewer = 0, lwcst_surface_color, lwcst_light_color, lwcst_palette_files, lwcst_8bit_files, lwcst_float_files, lwcst_alpha_files, lwcst_output, lwcst_output_alpha, lwcst_sizeof } |
| enum | LWColourSpace { lwcs_linear = 0, lwcs_sRGB, lwcs_rec709, lwcs_cineon, lwcs_ciexyz, lwcs_sizeof } |
| enum | LWColourSpaceConversion { lwcsc_colorspaceToLinear = 0, lwcsc_linearToColorspace, lwcsc_sizeof } |
| enum | LWColourSpaceLayer { lwcsl_RGB = 0, lwcsl_Alpha, lwcsl_sizeof } |
| enum | MutexID { MUTEX0 = 0, MUTEX1, MUTEX2, MUTEX3, MUTEX4, MUTEX5, MUTEX6, MUTEX7, MUTEX8, MUTEX9 } |
| Mutex ids. Use these since LW only provides us with 10 mutexes. More... | |
| enum | SizerFlags { STRETCH_HORIZONTAL = 1 << 0, STRETCH_VERTICAL = 1 << 1 } |
Functions | |
| template<class Type > | |
| int | Ceil (const Type x) |
| template<class Type > | |
| Type | Clamp (const Type value, const Type min, const Type max) |
| Clamp a value between min and max. | |
| bool | cmpNoCase (const std::string &s1, const std::string &s2) |
| Case independant string comparison. | |
| template<typename T > | |
| void | CoordinateSystem (const Vector3< T > &v1, Vector3< T > *v2, Vector3< T > *v3) |
| Create a coordinate system out of one vector. | |
| template<typename T > | |
| void | CoordinateSystem (const Vector3< T > &view, const Vector3< T > &normal, Vector3< T > *right, Vector3< T > *forward) |
| Create a coordinate system out of two vectors, one being the normal, the other the viewing ray. | |
| template<typename T > | |
| Vector3< T > | Cross (Vector3< T > a, Vector3< T > b) |
| Cross product of two Vector3. | |
| template<class Type > | |
| Type | Degrees (const Type rad) |
| Radians to degree conversion. | |
| int | Double2Int (double val) |
| Fast double to integer conversion. | |
| template<class Type > | |
| int | Floor (const Type x) |
| template<typename T > | |
| T * | getEventHandler (PanelControl &control) |
| Helper function for callbacks. | |
| LWFrame | GetFrame () |
| std::string | getTempPath () |
| returns the current temp path, including a trailing separator | |
| LWTime | GetTime () |
| template<class T > | |
| T * | getTransGlobal (const char *globalName) |
| Matrix4x4d | getWorld2Screen (LWItem cid, LWTime time) |
| Matrix4x4d | getWorld2Screen (LWItemID id, LWTime time) |
| Generate a world to screen transformation matrix. | |
| Matrix4x4d | getWorld2Screen (LWTime time) |
| Return the world to Screen transformation matrix for the current camera at the time specified. | |
| int | IlluminationSampler (void *data, LWItemID light, const LWDVector dir, const LWDVector color) |
| Creates a callback to sample illumination. | |
| IMPLEMENT_GLOBAL (LWColorSpaceFuncs, LWPP_COLORSPACEFUNCS_GLOBAL) | |
| template<class Type > | |
| bool | inRange (const Type x, const Type min, const Type max) |
| return true if the value is within the range, including the bounds | |
| bool | isDirectory (const std::string name) |
| bool | isDoubleClick (unsigned int milliseconds) |
| Check if the time in milliseconds is short enough to be registered as a double click. | |
| template<class T > | |
| T | Lerp (const double f, const T a, const T b) |
| template<class Type > | |
| Type | log2 (const Type a) |
| template<typename T > | |
| void | LWXPanelBtnClickFunc (LWXPanelID panel, int cid) |
| std::string | makeAbsoluteName (pathList basePath, const std::string relFileName) |
| std::string | makeAbsoluteName (const std::string basePath, const std::string relFileName) |
| void | makeAllDirectories (const char *path) |
| std::string | makeFullFileName (const pathList &path, const std::string &file, const std::string &ext) |
| std::string | makeFullPath (const pathList &path) |
| std::string | makeRelativeName (pathList basePath, const std::string absFileName) |
| std::string | makeRelativeName (const std::string basePath, const std::string absFileName) |
| Return the file name in relation to base. | |
| template<class Type > | |
| Type | Max (Type a, Type b) |
| Maximum. | |
| template<class Type > | |
| Type | Max (const Type v[3]) |
| template<class Type > | |
| Type | Min (const Type a, const Type b) |
| Minimum. | |
| template<class Type > | |
| Type | Min (const Type v[3]) |
| template<class Type > | |
| int | Mod (const Type a, const Type b) |
| bool | nocase_compare (const char c1, const char c2) |
| template<class Type > | |
| Type | Normalize (const Type x, const Type min, const Type max) |
| void | OpenURL (const std::string urlString) |
| Open a URL in the default application, usually a browser. | |
| int | Pow2 (const int n) |
| template<class Type > | |
| Type | Radians (const Type deg) |
| Degrees to radians conversion. | |
| template<class Type > | |
| Type | Range (const Type x, const Type min, const Type max) |
| void | RegisterImageChangeComRing () |
| template<class Type > | |
| int | Round (const double r) |
| int | Round2Int (double val) |
| Fast rounding of a double to an integer. | |
| int | SendCommand (const char *cmdname, const char *fmt,...) |
| Send a Command to layout during any context. | |
| int | SendCommand (const std::string cmd) |
| void | SetSuperGlobal (GlobalFunc *g) |
| Set Superglobal. | |
| template<class T > | |
| T | SignOf (const T a) |
| template<class Type > | |
| Type | SmoothStep (const Type value, const Type min, const Type max) |
| template<class Type > | |
| Type | SmoothStep (const Type value) |
| pathList | splitFullPath (std::string sourcePath, std::string &fileName, std::string &ext) |
| pathList | splitPath (std::string sourcePath) |
| template<class Type > | |
| Type | Sqr (const Type a) |
| Minimum. | |
| std::string | stripExtension (const char *source) |
| template<class T > | |
| void | Swap (T &a, T &b) |
| std::string & | toCapitalize (std::string &str) |
| Capitalizes a string so the first character and every character after a space is in upper case. | |
| std::string & | toLowercase (std::string &str) |
| convert a string in-place to lower case | |
| std::string | trim (const std::string &s, const char *ws) |
| void | trimTrail (std::string &path) |
| void | UnregisterImageChangeComRing () |
| bool | World2Screen (lwpp::Point3d pt, double scoord[2], lwpp::Matrix4x4d &CameraTransform, double frameAspect) |
| Transformation from world to screen coordinates. | |
| bool | World2Screen (lwpp::Vector3d dir, double scoord[2], lwpp::Matrix4x4d &CameraTransform, double frameAspect) |
| Transformation from world to screen coordinates. | |
| bool | World2Screen (lwpp::Point3d pt, double scoord[2], LWItemID camID, LWTime time, double pixelAspect) |
| Transformation from world to screen coordinates. | |
| bool | World2Screen (lwpp::Point3d pt, double scoord[2], LWTime time) |
| Transformation from world to screen coordinates. | |
| void | xyztohp (const double x, const double y, const double z, double &h, double &p) |
| double | xztoh (const double x, const double z) |
Variables | |
| const char * | fSeps = "\\/" |
| const char | inFuncs [] = "NodeInputFuncs" |
| const char | inFuncs2 [] = "NodeInputFuncs 2" |
| LWPP_CUSTOMOBJECT_VERSION | |
| LWPP_DISPLACEMENT_VERSION | |
| LWPP_IMAGEFILTER_VERSION | |
| LWPP_LIGHT_VERSION | |
| LWPP_NODE_VERSION | |
| LWPP_PIXELFILTER_VERSION | |
| LWPP_SHADER_VERSION | |
| LWPP_TEXTURE_VERSION | |
| max | |
| min | |
| GlobalFunc * | SuperGlobal = 0 |
| Initialize and store superglobal GlobalFunc. | |
contain Carbon specific code for the OSX XCode version platform_carbon.cpp lwpp
LightWrap++ related classes and functions.
contain Cocoa specific code for the OSX XCode version platform_cocoa.cpp lwpp
contain Carbon specific code for the OSX XCode version platform_cfm.cpp lwpp
Created by Michael Wolf on 7/5/09. Copyright 2009 db&w Bornemann und Wolf GbR. All rights reserved.
Contains all platform specific code for windows
LightWrap++ is fully contained within the lwpp namespace.
| typedef std::auto_ptr<LWNodeInput> lwpp::auto_NodeInput |
Helper declaration for node member variables.
| typedef std::auto_ptr<LWNodeOutput> lwpp::auto_NodeOutput |
Helper declaration for node member variables.
| typedef std::auto_ptr<VParm> lwpp::auto_VParm |
| typedef std::set<int> lwpp::BufferSet |
| typedef HandlerList::iterator lwpp::HandlerIterator |
| typedef std::vector<SimpleHandler *> lwpp::HandlerList |
| typedef struct lwpp::st_lwcolorspacefuncs lwpp::LWColorSpaceFuncs |
Color space functions.
Color spaces file references are save in the scene file if they are used, in the viewer, color space file defaults or in a LWO from the image viewer.
| typedef void lwpp::LWPixelConversionAlphaFunc(struct st_lwimagelookup *, float *, float *) |
Conversion function prototype.
| typedef void lwpp::LWPixelConversionRGBFunc(struct st_lwimagelookup *, float *, float *) |
struct st_lwimagelookup *
Is a forward reference to the internal lw instance structure ( defined internally ). This is used instead of a void * pointer. Conversion function prototype.
| typedef Matrix4x4<double> lwpp::Matrix4x4d |
| typedef Matrix4x4<float> lwpp::Matrix4x4f |
| typedef pathList::const_iterator lwpp::pathCIterator |
| typedef pathList::iterator lwpp::pathIterator |
| typedef std::deque<std::string> lwpp::pathList |
| typedef PluginList::iterator lwpp::PluginIterator |
| typedef std::vector<ServerRecord> lwpp::PluginList |
| typedef Point3<double> lwpp::Point3d |
| typedef Point3<float> lwpp::Point3f |
| typedef void lwpp::SimpleHandler() |
| typedef Vector3< double > lwpp::Vector3d |
| typedef Vector3< float > lwpp::Vector3f |
| anonymous enum |
| enum lwpp::LWColourSpace |
| lwcs_linear |
LightWave linear color space. |
| lwcs_sRGB |
Standard RGB color space. |
| lwcs_rec709 |
Recommendation BT.709, HDTV. |
| lwcs_cineon |
Eastman Kodak Co. |
| lwcs_ciexyz |
CIE XYZ. |
| lwcs_sizeof |
| enum lwpp::MutexID |
| enum lwpp::SizerFlags |
| int lwpp::Ceil | ( | const Type | x | ) |
| Type lwpp::Clamp | ( | const Type | value, |
| const Type | min, | ||
| const Type | max | ||
| ) |
Clamp a value between min and max.
|
inline |
Case independant string comparison.
|
inline |
Create a coordinate system out of one vector.
|
inline |
Create a coordinate system out of two vectors, one being the normal, the other the viewing ray.
|
inline |
| Type lwpp::Degrees | ( | const Type | rad | ) |
Radians to degree conversion.
|
inline |
Fast double to integer conversion.
| int lwpp::Floor | ( | const Type | x | ) |
| T* lwpp::getEventHandler | ( | PanelControl & | control | ) |
Helper function for callbacks.
|
inline |
| std::string lwpp::getTempPath | ( | ) |
returns the current temp path, including a trailing separator
|
inline |
| T* lwpp::getTransGlobal | ( | const char * | globalName | ) |
| Matrix4x4d lwpp::getWorld2Screen | ( | LWItem | cid, |
| LWTime | time | ||
| ) |
| Matrix4x4d lwpp::getWorld2Screen | ( | LWItemID | id, |
| LWTime | time | ||
| ) |
Generate a world to screen transformation matrix.
| [in] | id | LWItem of the camera |
| [in] | time | The time at which to generate the matrix |
| Matrix4x4d lwpp::getWorld2Screen | ( | LWTime | time | ) |
Return the world to Screen transformation matrix for the current camera at the time specified.
| int lwpp::IlluminationSampler | ( | void * | data, |
| LWItemID | light, | ||
| const LWDVector | dir, | ||
| const LWDVector | color | ||
| ) |
Creates a callback to sample illumination.
Create a shading class derived from ShadingEvaluator Use the sampler:
| lwpp::IMPLEMENT_GLOBAL | ( | LWColorSpaceFuncs | , |
| LWPP_COLORSPACEFUNCS_GLOBAL | |||
| ) |
| bool lwpp::inRange | ( | const Type | x, |
| const Type | min, | ||
| const Type | max | ||
| ) |
return true if the value is within the range, including the bounds
| bool lwpp::isDirectory | ( | const std::string | name | ) |
| bool lwpp::isDoubleClick | ( | unsigned int | milliseconds | ) |
Check if the time in milliseconds is short enough to be registered as a double click.
| T lwpp::Lerp | ( | const double | f, |
| const T | a, | ||
| const T | b | ||
| ) |
| Type lwpp::log2 | ( | const Type | a | ) |
| void lwpp::LWXPanelBtnClickFunc | ( | LWXPanelID | panel, |
| int | cid | ||
| ) |
| std::string lwpp::makeAbsoluteName | ( | pathList | basePath, |
| const std::string | relFileName | ||
| ) |
| std::string lwpp::makeAbsoluteName | ( | const std::string | basePath, |
| const std::string | relFileName | ||
| ) |
| void lwpp::makeAllDirectories | ( | const char * | path | ) |
| std::string lwpp::makeFullFileName | ( | const pathList & | path, |
| const std::string & | file, | ||
| const std::string & | ext | ||
| ) |
| std::string lwpp::makeFullPath | ( | const pathList & | path | ) |
| std::string lwpp::makeRelativeName | ( | pathList | basePath, |
| const std::string | absFileName | ||
| ) |
| std::string lwpp::makeRelativeName | ( | const std::string | basePath, |
| const std::string | absFileName | ||
| ) |
Return the file name in relation to base.
| Type lwpp::Max | ( | Type | a, |
| Type | b | ||
| ) |
Maximum.
| Type lwpp::Max | ( | const Type | v[3] | ) |
| Type lwpp::Min | ( | const Type | a, |
| const Type | b | ||
| ) |
Minimum.
| Type lwpp::Min | ( | const Type | v[3] | ) |
| int lwpp::Mod | ( | const Type | a, |
| const Type | b | ||
| ) |
|
inline |
| Type lwpp::Normalize | ( | const Type | x, |
| const Type | min, | ||
| const Type | max | ||
| ) |
| void lwpp::OpenURL | ( | const std::string | urlString | ) |
Open a URL in the default application, usually a browser.
|
inline |
| Type lwpp::Radians | ( | const Type | deg | ) |
Degrees to radians conversion.
| Type lwpp::Range | ( | const Type | x, |
| const Type | min, | ||
| const Type | max | ||
| ) |
| void lwpp::RegisterImageChangeComRing | ( | ) |
| int lwpp::Round | ( | const double | r | ) |
|
inline |
Fast rounding of a double to an integer.
|
inline |
Send a Command to layout during any context.
|
inline |
| void lwpp::SetSuperGlobal | ( | GlobalFunc * | g | ) |
Set Superglobal.
Initialize the SuperGlobal, this is just to keep it clean
| T lwpp::SignOf | ( | const T | a | ) |
| Type lwpp::SmoothStep | ( | const Type | value, |
| const Type | min, | ||
| const Type | max | ||
| ) |
| Type lwpp::SmoothStep | ( | const Type | value | ) |
| pathList lwpp::splitFullPath | ( | std::string | sourcePath, |
| std::string & | fileName, | ||
| std::string & | ext | ||
| ) |
| pathList lwpp::splitPath | ( | std::string | sourcePath | ) |
| Type lwpp::Sqr | ( | const Type | a | ) |
Minimum.
| std::string lwpp::stripExtension | ( | const char * | source | ) |
| void lwpp::Swap | ( | T & | a, |
| T & | b | ||
| ) |
|
inline |
Capitalizes a string so the first character and every character after a space is in upper case.
|
inline |
convert a string in-place to lower case
| std::string lwpp::trim | ( | const std::string & | s, |
| const char * | ws | ||
| ) |
| void lwpp::trimTrail | ( | std::string & | path | ) |
| void lwpp::UnregisterImageChangeComRing | ( | ) |
| bool lwpp::World2Screen | ( | lwpp::Point3d | pt, |
| double | scoord[2], | ||
| lwpp::Matrix4x4d & | CameraTransform, | ||
| double | frameAspect | ||
| ) |
Transformation from world to screen coordinates.
| bool lwpp::World2Screen | ( | lwpp::Vector3d | dir, |
| double | scoord[2], | ||
| lwpp::Matrix4x4d & | CameraTransform, | ||
| double | frameAspect | ||
| ) |
Transformation from world to screen coordinates.
| bool lwpp::World2Screen | ( | lwpp::Point3d | pt, |
| double | scoord[2], | ||
| LWItemID | camID, | ||
| LWTime | time, | ||
| double | pixelAspect | ||
| ) |
Transformation from world to screen coordinates.
requires SceneInfo
| [in] | pt | Point in world coordinates |
| [out] | scoord | screen coordinates in fractional pixels |
| [in] | camID | ID of the camera |
| [in] | time | LWTime |
| [in] | pixelAspect | The pixel aspect of the camera |
| bool lwpp::World2Screen | ( | lwpp::Point3d | pt, |
| double | scoord[2], | ||
| LWTime | time | ||
| ) |
Transformation from world to screen coordinates.
requires SceneInfo
| [in] | pt | Point in world coordinates |
| [out] | scoord | screen coordinates ind fractional pixels |
| [in] | time | LWTime |
|
inline |
Support function for doing spherical mapping
|
inline |
Support function for doing cylindrical mapping
| const char * lwpp::fSeps = "\\/" |
| const char lwpp::inFuncs = "NodeInputFuncs" |
| const char lwpp::inFuncs2 = "NodeInputFuncs 2" |
| lwpp::LWPP_CUSTOMOBJECT_VERSION |
| lwpp::LWPP_DISPLACEMENT_VERSION |
| lwpp::LWPP_IMAGEFILTER_VERSION |
| lwpp::LWPP_LIGHT_VERSION |
| lwpp::LWPP_NODE_VERSION |
| lwpp::LWPP_PIXELFILTER_VERSION |
| lwpp::LWPP_SHADER_VERSION |
| lwpp::LWPP_TEXTURE_VERSION |
| lwpp::max |
| lwpp::min |
| GlobalFunc * lwpp::SuperGlobal = 0 |
Initialize and store superglobal GlobalFunc.
Superglobal storage for GlobalFunc.
This is shared by all plugins within the DLL, and should be initialized as soon as possible