class ScriptablePipeline
ScriptablePipeline lets users define their own processing, while still using the distribution systems supported by Simplygon.
Properties
| Property | Description |
|---|---|
| LogOutputObject | The name of the log output object, which will be added to the Output package on completion. The object name defaults to 'LogOutput' |
| MainScriptObject | The name of the main script object, which needs to exist in the Input package. The object name defaults to 'MainScript' |
| Name | The name of the ScriptablePipeline object. (Inherited from Object) |
| RunMode | Sets in what context the pipeline will run. Note that 'RunInThisProcess' is not allowed for scriptable pipelines, as users provide their own script environment. Setting this will result in a warning, and a fallback to 'RunInNewProcess' |
Methods
| Method | Description |
|---|---|
| AddObserver | Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object) |
| GetBatchProcessPath | Gets the current override to the path to the SimplygonBatch processor. If left empty, the Simplygon environment path is instead used to find the batch processor. |
| GetClass | Get the name of the ScriptablePipeline class. (Inherited from Object) |
| GetInput | Get the Input package data object. |
| GetOutput | Get the Output package data object. The object will be filled with valid data after a successful pipeline run. |
| GetScriptEnvironmentExitCode | Retrieves the exit code from the environment running the script. |
| IsA | Returns true if ScriptablePipeline is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
| IsNull | Returns true if the ScriptablePipeline object is invalid. (Inherited from Object) |
| IsSameObjectAs | Returns true if the ScriptablePipeline object is valid. (Inherited from Object) |
| NonNull | Returns true if the ScriptablePipeline object is valid. (Inherited from Object) |
| PrintInfo | Prints the content/info of the ScriptablePipeline object to the log. (Inherited from Object) |
| RemoveObserver | Removes a previously added observer object. (Inherited from Object) |
| Run | Runs the pipeline. Make sure to set up Input data package and MainScript script file before running. If the returned error is FailedToRunPipeline, the batch process was successfully run, but the script environment returned a non-zero exit code. Use GetScriptEnvironmentExitCode() to retrieve the exit code from the script environment, and the LogOutput object in the Output package to retrieve the stdout and stderr from the script environment. |
| SetBatchProcessPath | Overrides the path to the SimplygonBatch processor. If left empty, the Simplygon environment path is instead used to find the batch processor. |
Static methods
| Method | Description |
|---|---|
| IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
| SafeCast | SafeCast makes sure the input object is of a class that can be cast into spScriptablePipeline, and if this is the case, returns the object cast into spScriptablePipeline. (Inherited from Object) |
Properties details
LogOutputObject
The name of the log output object, which will be added to the Output package on completion. The object name defaults to 'LogOutput'
Syntax
// Setter
SGEXPERIMENTAL void SetLogOutputObject( const char * script ) const;
// Getter
SGEXPERIMENTAL spString GetLogOutputObject() const;SetLogOutputObject parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
std::string | script | The log output object name. |
GetLogOutputObject return value
Type: std::string
Syntax
// Setter
void SetLogOutputObject(string script);
// Getter
string GetLogOutputObject();SetLogOutputObject parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | script | The log output object name. |
GetLogOutputObject return value
Type: string
Syntax
# Setter
None SetLogOutputObject(script: str)
# Getter
str GetLogOutputObject()SetLogOutputObject parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| script | str | The log output object name. |
GetLogOutputObject return value
Type: str
MainScriptObject
The name of the main script object, which needs to exist in the Input package. The object name defaults to 'MainScript'
Syntax
// Setter
SGEXPERIMENTAL void SetMainScriptObject( const char * script ) const;
// Getter
SGEXPERIMENTAL spString GetMainScriptObject() const;SetMainScriptObject parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
std::string | script | The main script object name. |
GetMainScriptObject return value
Type: std::string
Syntax
// Setter
void SetMainScriptObject(string script);
// Getter
string GetMainScriptObject();SetMainScriptObject parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | script | The main script object name. |
GetMainScriptObject return value
Type: string
Syntax
# Setter
None SetMainScriptObject(script: str)
# Getter
str GetMainScriptObject()SetMainScriptObject parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| script | str | The main script object name. |
GetMainScriptObject return value
Type: str
Name
The name of the ScriptablePipeline object. (Inherited from Object)
Syntax
// Setter
SGEXPERIMENTAL void SetName( const char * name ) const;
// Getter
SGEXPERIMENTAL spString GetName() const;SetName parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
const char * | name | New name of the object. |
GetName return value
Type: spString
Syntax
// Setter
void SetName(string name);
// Getter
string GetName();SetName parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | name | New name of the object. |
GetName return value
Type: string
Syntax
# Setter
None SetName(name: str)
# Getter
str GetName()SetName parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| name | str | New name of the object. |
GetName return value
Type: str
RunMode
Sets in what context the pipeline will run. Note that 'RunInThisProcess' is not allowed for scriptable pipelines, as users provide their own script environment. Setting this will result in a warning, and a fallback to 'RunInNewProcess'
Syntax
// Setter
SGEXPERIMENTAL void SetRunMode( Simplygon::EPipelineRunMode mode ) const;
// Getter
SGEXPERIMENTAL Simplygon::EPipelineRunMode GetRunMode() const;SetRunMode parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| EPipelineRunMode | mode | The selected run mode for the pipeline |
GetRunMode return value
Type: EPipelineRunMode
Default: RunInNewProcess
| Key | Value | Comment |
|---|---|---|
| RunInThisProcess | 0 | Run the pipeline in this process |
| RunInNewProcess | 1 | Run the pipeline in a new process using the batch executor tool |
| RunDistributedUsingSimplygonGrid | 2 | Run the pipeline distributed using SimplygonGrid |
| RunDistributedUsingIncredibuild | 3 | Run the pipeline distributed using IncrediBuild |
| RunDistributedUsingFastbuild | 4 | Run the pipeline distributed using Fastbuild |
Syntax
// Setter
void SetRunMode(EPipelineRunMode mode);
// Getter
EPipelineRunMode GetRunMode();SetRunMode parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| EPipelineRunMode | mode | The selected run mode for the pipeline |
GetRunMode return value
Type: EPipelineRunMode
Default: RunInNewProcess
| Key | Value | Comment |
|---|---|---|
| RunInThisProcess | 0 | Run the pipeline in this process |
| RunInNewProcess | 1 | Run the pipeline in a new process using the batch executor tool |
| RunDistributedUsingSimplygonGrid | 2 | Run the pipeline distributed using SimplygonGrid |
| RunDistributedUsingIncredibuild | 3 | Run the pipeline distributed using IncrediBuild |
| RunDistributedUsingFastbuild | 4 | Run the pipeline distributed using Fastbuild |
Syntax
# Setter
None SetRunMode(mode: EPipelineRunMode_*)
# Getter
EPipelineRunMode_* GetRunMode()SetRunMode parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| mode | EPipelineRunMode | The selected run mode for the pipeline |
GetRunMode return value
Type: EPipelineRunMode
Default: RunInNewProcess
| Key | Value | Comment |
|---|---|---|
| EPipelineRunMode_RunInThisProcess | 0 | Run the pipeline in this process |
| EPipelineRunMode_RunInNewProcess | 1 | Run the pipeline in a new process using the batch executor tool |
| EPipelineRunMode_RunDistributedUsingSimplygonGrid | 2 | Run the pipeline distributed using SimplygonGrid |
| EPipelineRunMode_RunDistributedUsingIncredibuild | 3 | Run the pipeline distributed using IncrediBuild |
| EPipelineRunMode_RunDistributedUsingFastbuild | 4 | Run the pipeline distributed using Fastbuild |
Methods details
AddObserver
Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
Syntax
SGEXPERIMENTAL rid AddObserver( const spObserver & observer ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
Observer | observer | Observer is the object that will receive events. |
Return value
Type: rid
Syntax
int AddObserver(spObserver observer);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
Observer | observer | Observer is the object that will receive events. |
Return value
Type: int
Syntax
int AddObserver(observer: spObserver)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| observer | Observer | Observer is the object that will receive events. |
Return value
Type: int
GetBatchProcessPath
Gets the current override to the path to the SimplygonBatch processor. If left empty, the Simplygon environment path is instead used to find the batch processor.
Syntax
SGEXPERIMENTAL spString GetBatchProcessPath() const;Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: std::filesystem::path
Syntax
string GetBatchProcessPath();Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: string
Syntax
str GetBatchProcessPath()Parameters
| Name | Type | Min | Max | Description |
|---|
Return value
Type: str
GetClass
Get the name of the ScriptablePipeline class. (Inherited from Object)
Syntax
SGEXPERIMENTAL spString GetClass() const;Parameters
GetClass takes no parameters.
Return value
Type: spString
Syntax
string GetClass();Parameters
GetClass takes no parameters.
Return value
Type: string
Syntax
str GetClass()Parameters
GetClass takes no parameters.
Return value
Type: str
GetInput
Get the Input package data object.
Syntax
SGEXPERIMENTAL spDataPackage GetInput() const;Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
Syntax
spRefPtr<SgDataPackage> GetInput();Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
Syntax
spRefPtr<SgDataPackage> GetInput()Parameters
| Name | Type | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
GetOutput
Get the Output package data object. The object will be filled with valid data after a successful pipeline run.
Syntax
SGEXPERIMENTAL spDataPackage GetOutput() const;Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
Syntax
spRefPtr<SgDataPackage> GetOutput();Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
Syntax
spRefPtr<SgDataPackage> GetOutput()Parameters
| Name | Type | Min | Max | Description |
|---|
Return value
Type: RefPtr<SgDataPackage>
GetScriptEnvironmentExitCode
Retrieves the exit code from the environment running the script.
Syntax
SGEXPERIMENTAL int GetScriptEnvironmentExitCode() const;Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: int
Syntax
int GetScriptEnvironmentExitCode();Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: int
Syntax
int GetScriptEnvironmentExitCode()Parameters
| Name | Type | Min | Max | Description |
|---|
Return value
Type: int
IsA
Returns true if ScriptablePipeline is a or is a descendant of the class named as the type parameter. (Inherited from Object)
Syntax
SGEXPERIMENTAL bool IsA( const char * type ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
const char * | type | Name of the class to check if ScriptablePipeline is, or is a descendant of. |
Return value
Type: bool
Syntax
bool IsA(string type);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | type | Name of the class to check if ScriptablePipeline is, or is a descendant of. |
Return value
Type: bool
Syntax
bool IsA(type: str)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| type | str | Name of the class to check if ScriptablePipeline is, or is a descendant of. |
Return value
Type: bool
IsNull
Returns true if the ScriptablePipeline object is invalid. (Inherited from Object)
IsSameObjectAs
Returns true if the ScriptablePipeline object is valid. (Inherited from Object)
Syntax
SGEXPERIMENTAL bool IsSameObjectAs( const spObject & object ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| Object | object | Object to compare with. |
Return value
Type: bool
Syntax
bool IsSameObjectAs(spObject object);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| Object | object | Object to compare with. |
Return value
Type: bool
Syntax
bool IsSameObjectAs(object: spObject)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| object | Object | Object to compare with. |
Return value
Type: bool
NonNull
Returns true if the ScriptablePipeline object is valid. (Inherited from Object)
PrintInfo
Prints the content/info of the ScriptablePipeline object to the log. (Inherited from Object)
RemoveObserver
Removes a previously added observer object. (Inherited from Object)
Syntax
SGEXPERIMENTAL void RemoveObserver( rid observerId ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
rid | observerId | ObserverId is the id returned by AddObserver when the observer was added. |
Syntax
void RemoveObserver(int observerId);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
int | observerId | ObserverId is the id returned by AddObserver when the observer was added. |
Syntax
None RemoveObserver(observerId: int)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| observerId | int | ObserverId is the id returned by AddObserver when the observer was added. |
Run
Runs the pipeline. Make sure to set up Input data package and MainScript script file before running. If the returned error is FailedToRunPipeline, the batch process was successfully run, but the script environment returned a non-zero exit code. Use GetScriptEnvironmentExitCode() to retrieve the exit code from the script environment, and the LogOutput object in the Output package to retrieve the stdout and stderr from the script environment.
Syntax
SGEXPERIMENTAL Simplygon::EErrorCodes Run() const;Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| NoError | 0 | No error, the initialization or process has finished, and with no errors |
| NoLicense | -1 | no license was found (or licence expired) |
| NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| AlreadyInitialized | -3 | the SDK is already initialized |
| DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| InvalidInputParam | -5 | an invalid parameter was passed to the method |
| FailedTesting | -6 | the reduction failed post-testing |
| DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| FailedToRunPipeline | -13 | failed to run pipeline |
| UnhandledException | -14 | an unhandled exception was encountered |
| FileError | -15 | a file read/write failed. |
| InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| UnexpectedError | -18 | an unexpected error happened. |
| FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| LicenseHasExpired | -10006 | the license has expired |
| LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| NoNetworkCardFound | -10009 | no network card was found on the machine |
| LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| LicenseExpired | -10014 | the license is invalid, please contact licensing |
| LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
Syntax
EErrorCodes Run();Parameters
| Type | Name | Min | Max | Description |
|---|
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| NoError | 0 | No error, the initialization or process has finished, and with no errors |
| NoLicense | -1 | no license was found (or licence expired) |
| NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| AlreadyInitialized | -3 | the SDK is already initialized |
| DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| InvalidInputParam | -5 | an invalid parameter was passed to the method |
| FailedTesting | -6 | the reduction failed post-testing |
| DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| FailedToRunPipeline | -13 | failed to run pipeline |
| UnhandledException | -14 | an unhandled exception was encountered |
| FileError | -15 | a file read/write failed. |
| InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| UnexpectedError | -18 | an unexpected error happened. |
| FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| LicenseHasExpired | -10006 | the license has expired |
| LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| NoNetworkCardFound | -10009 | no network card was found on the machine |
| LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| LicenseExpired | -10014 | the license is invalid, please contact licensing |
| LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
Syntax
EErrorCodes_* Run()Parameters
| Name | Type | Min | Max | Description |
|---|
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| EErrorCodes_NoError | 0 | No error, the initialization or process has finished, and with no errors |
| EErrorCodes_NoLicense | -1 | no license was found (or licence expired) |
| EErrorCodes_NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| EErrorCodes_AlreadyInitialized | -3 | the SDK is already initialized |
| EErrorCodes_DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| EErrorCodes_InvalidInputParam | -5 | an invalid parameter was passed to the method |
| EErrorCodes_FailedTesting | -6 | the reduction failed post-testing |
| EErrorCodes_DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| EErrorCodes_DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| EErrorCodes_LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| EErrorCodes_LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| EErrorCodes_LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| EErrorCodes_FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| EErrorCodes_FailedToRunPipeline | -13 | failed to run pipeline |
| EErrorCodes_UnhandledException | -14 | an unhandled exception was encountered |
| EErrorCodes_FileError | -15 | a file read/write failed. |
| EErrorCodes_InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| EErrorCodes_DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| EErrorCodes_UnexpectedError | -18 | an unexpected error happened. |
| EErrorCodes_FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| EErrorCodes_ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| EErrorCodes_FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| EErrorCodes_FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| EErrorCodes_FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| EErrorCodes_FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| EErrorCodes_DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| EErrorCodes_LicenseHasExpired | -10006 | the license has expired |
| EErrorCodes_LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| EErrorCodes_LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| EErrorCodes_NoNetworkCardFound | -10009 | no network card was found on the machine |
| EErrorCodes_LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| EErrorCodes_LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| EErrorCodes_ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| EErrorCodes_LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| EErrorCodes_LicenseExpired | -10014 | the license is invalid, please contact licensing |
| EErrorCodes_LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| EErrorCodes_YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| EErrorCodes_LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| EErrorCodes_ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| EErrorCodes_UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| EErrorCodes_LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| EErrorCodes_MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| EErrorCodes_YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| EErrorCodes_LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| EErrorCodes_ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
SetBatchProcessPath
Overrides the path to the SimplygonBatch processor. If left empty, the Simplygon environment path is instead used to find the batch processor.
Syntax
SGEXPERIMENTAL Simplygon::EErrorCodes SetBatchProcessPath( const char * path ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
std::filesystem::path | path | The path to SimplygonBatch |
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| NoError | 0 | No error, the initialization or process has finished, and with no errors |
| NoLicense | -1 | no license was found (or licence expired) |
| NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| AlreadyInitialized | -3 | the SDK is already initialized |
| DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| InvalidInputParam | -5 | an invalid parameter was passed to the method |
| FailedTesting | -6 | the reduction failed post-testing |
| DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| FailedToRunPipeline | -13 | failed to run pipeline |
| UnhandledException | -14 | an unhandled exception was encountered |
| FileError | -15 | a file read/write failed. |
| InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| UnexpectedError | -18 | an unexpected error happened. |
| FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| LicenseHasExpired | -10006 | the license has expired |
| LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| NoNetworkCardFound | -10009 | no network card was found on the machine |
| LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| LicenseExpired | -10014 | the license is invalid, please contact licensing |
| LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
Syntax
EErrorCodes SetBatchProcessPath(string path);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | path | The path to SimplygonBatch |
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| NoError | 0 | No error, the initialization or process has finished, and with no errors |
| NoLicense | -1 | no license was found (or licence expired) |
| NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| AlreadyInitialized | -3 | the SDK is already initialized |
| DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| InvalidInputParam | -5 | an invalid parameter was passed to the method |
| FailedTesting | -6 | the reduction failed post-testing |
| DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| FailedToRunPipeline | -13 | failed to run pipeline |
| UnhandledException | -14 | an unhandled exception was encountered |
| FileError | -15 | a file read/write failed. |
| InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| UnexpectedError | -18 | an unexpected error happened. |
| FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| LicenseHasExpired | -10006 | the license has expired |
| LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| NoNetworkCardFound | -10009 | no network card was found on the machine |
| LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| LicenseExpired | -10014 | the license is invalid, please contact licensing |
| LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
Syntax
EErrorCodes_* SetBatchProcessPath(path: str)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| path | str | The path to SimplygonBatch |
Return value
Type: EErrorCodes
| Key | Value | Comment |
|---|---|---|
| EErrorCodes_NoError | 0 | No error, the initialization or process has finished, and with no errors |
| EErrorCodes_NoLicense | -1 | no license was found (or licence expired) |
| EErrorCodes_NotInitialized | -2 | the SDK is not initialized, or no process object has been loaded/created |
| EErrorCodes_AlreadyInitialized | -3 | the SDK is already initialized |
| EErrorCodes_DLLOrDependenciesNotFound | -4 | the specified file was not found. This might also mean that a .dll cannot be loaded because there is a missing dependency, such as the runtime environment. |
| EErrorCodes_InvalidInputParam | -5 | an invalid parameter was passed to the method |
| EErrorCodes_FailedTesting | -6 | the reduction failed post-testing |
| EErrorCodes_DLLAndHeaderFileIsNotMatching | -7 | the Simplygon DLL and header file interface versions do not match |
| EErrorCodes_DLLFailedToLoad | -8 | the Simplygon DLL failed loading, probably because of a missing dependency |
| EErrorCodes_LicenseNotForThisApplication | -9 | the license is not made for this application of Simplygon |
| EErrorCodes_LicenseNotForThisPlatform | -10 | the license is not made for this platform of Simplygon |
| EErrorCodes_LicenseNotForThisVersion | -11 | the license is not made for this version of Simplygon |
| EErrorCodes_FailedToCreatePipelineSerializer | -12 | failed to create pipeline serializer |
| EErrorCodes_FailedToRunPipeline | -13 | failed to run pipeline |
| EErrorCodes_UnhandledException | -14 | an unhandled exception was encountered |
| EErrorCodes_FileError | -15 | a file read/write failed. |
| EErrorCodes_InvalidPath | -16 | a path is invalid or a file/directory is missing. |
| EErrorCodes_DependencyMissing | -17 | a needed dependency is missing. see log for info on what is missing. |
| EErrorCodes_UnexpectedError | -18 | an unexpected error happened. |
| EErrorCodes_FailedToUploadFreeLicenseAsset | -50 | failed to upload free license asset |
| EErrorCodes_ExceptionalError | -1000 | An exceptional and fatal error occurred, and has been reported to the error handler. The library is placed in an exceptional state, and you should unload and reload the Simplygon library to avoid memory leaks. |
| EErrorCodes_FailedToResolveLicenseServerHostName | -10001 | cannot reach the licensing server, cant look up server, check DNS |
| EErrorCodes_FailedToConnectToLicenseServer | -10002 | cannot contact the licensing server, check firewall/proxy server |
| EErrorCodes_FailedToConnectToLicenseServerAndSendData | -10003 | Failed to connect to the license server. Please check that your internet connection is working and outgoing connections to license.simplygon.com port 443 are not blocked by a firewall or proxy. |
| EErrorCodes_FailedToConnectToLicenseServerAndReceiveData | -10004 | cannot receive data from the licensing server, check firewall/proxy server |
| EErrorCodes_DataFromLicenseServerIsCorrupt | -10005 | data from licensing server is corrupted, try again, check connection |
| EErrorCodes_LicenseHasExpired | -10006 | the license has expired |
| EErrorCodes_LicenseIsInvalid | -10007 | the license data is corrupted, please reinstall the license key |
| EErrorCodes_LicenseNotForThisProduct | -10008 | the license is not for this product, please contact licensing, and replace license key |
| EErrorCodes_NoNetworkCardFound | -10009 | no network card was found on the machine |
| EErrorCodes_LicenseDecodeFailed | -10010 | could not decode license, it is corrupted |
| EErrorCodes_LicenseLockNotMatchingMachine | -10011 | the license is locked to another machine |
| EErrorCodes_ConnectionToLicenseServerLost | -10012 | Connection to license server lost |
| EErrorCodes_LicenseHashDataCorrupt | -10013 | could not decode license, it is corrupted |
| EErrorCodes_LicenseExpired | -10014 | the license is invalid, please contact licensing |
| EErrorCodes_LicenseNotLockedForThisMachine | -10020 | the license is locked to another machine |
| EErrorCodes_YourLicenseRequiresLatestWindows10 | -10024 | your license requires latest Windows 10 version |
| EErrorCodes_LicenseServerReturnedBadRequest | -10400 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| EErrorCodes_ProcessingCap | -10403 | You have reached the maximum number of processings for your license. Please try again in 24 hours or reach out to SimplygonSales@microsoft.com for support.. |
| EErrorCodes_UnknownLicenseKey | -10404 | You are using an unknown license key. Please verify so you typed in the license key correctly and try again |
| EErrorCodes_LicenseIsNotActive | -10410 | You are using an inactive license key. Please reach out to SimplygonSales[at]microsoft.com for support |
| EErrorCodes_MaxNodesReachForThisLicense | -10409 | You have reached the maximum number of nodes for your license. After 48 hours of not using Simplygon on a machine the license will be released and can be installed on another machine |
| EErrorCodes_YourLicenseRequiresLatestSimplygon | -10426 | The license key you are using requires you to update to the latest version before you can use Simplygon |
| EErrorCodes_LicenseServerReturnServerError | -10501 | Bad license request. Please reach out to SimplygonSupport[at]microsoft.com for support |
| EErrorCodes_ProcessingValidationError | -20001 | The process was aborted, because of a validation error. Either the process settings or the input data was invalid, or a combination thereof. Use GetErrorMessages in the main Simplygon object to retrieve error messages, and see the log for details. Note that the library is not left in an exceptional state, and it is safe to continue processing other scenes. |
Static methods details
IsClassA
Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
Syntax
static SGEXPERIMENTAL bool IsClassA( const char * type ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
const char * | type | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
Syntax
static bool IsClassA(string type);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
string | type | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
Syntax
@staticmethod
bool IsClassA(type: str)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| type | str | Name of the class to check if the class is, or is a descendant of. |
Return value
Type: bool
SafeCast
SafeCast makes sure the input object is of a class that can be cast into spScriptablePipeline, and if this is the case, returns the object cast into spScriptablePipeline. (Inherited from Object)
Syntax
static SGEXPERIMENTAL spScriptablePipeline SafeCast( const spObject & object ) const;Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| Object | object | Object to cast. |
Return value
Type: ScriptablePipeline
Syntax
static spScriptablePipeline SafeCast(spObject object);Parameters
| Type | Name | Min | Max | Description |
|---|---|---|---|---|
| Object | object | Object to cast. |
Return value
Type: ScriptablePipeline
Syntax
@staticmethod
spScriptablePipeline SafeCast(object: spObject)Parameters
| Name | Type | Min | Max | Description |
|---|---|---|---|---|
| object | Object | Object to cast. |
Return value
Type: ScriptablePipeline
