SCENE C++ API  2.1.0
Public Member Functions | List of all members
LSStandaloneContext Class Reference

Context class for standalone apps. More...

#include <lsstandalonecontext.h>

+ Inheritance diagram for LSStandaloneContext:

Public Member Functions

STANDALONE_API_EXPORT LSStandaloneContext ()
 Constructor Default constructor for use cases without an API key. More...
 
STANDALONE_API_EXPORT LSStandaloneContext (LSString key)
 Constructor. More...
 
STANDALONE_API_EXPORT LSStandaloneContext (LSStandaloneConfig const &config)
 
STANDALONE_API_EXPORT LSResult::Result setCurrentWorkspace (ref_ptr< LSWorkspace > workspace)
 Sets a default workspace as is required by some operations. More...
 
- Public Member Functions inherited from LSAppContext
LSString getAppName () const
 Gets the name of the calling app. More...
 
LSString getAppVersion () const
 Gets the version of the calling app. More...
 
LSString getApiVersion () const
 Gets the API runtime version. More...
 
LSPod< std::map< LSString, ref_ptr< LSTask > > > getRegisteredTasks () const
 Gets the tasks that are currently registered with this app context. More...
 
LSString registerTask (LSString name, ref_ptr< LSTask > task)
 Registers a task. More...
 
bool disableTask (LSString taskID)
 Disables a task. More...
 
bool isModuleAvailable (LSString moduleName) const
 Checks if the queried module is available in the host application (SCENE, ...). More...
 
LengthUnit getUnitsExportLength () const
 Gets the units for length used in export. More...
 
LengthUnit getUnitsDisplayLength () const
 Gets the units for length used in display setting. More...
 
AngleUnit getUnitsDisplayAngle () const
 Gets the units for angle used in display setting. More...
 
LengthUnit getUnitsDisplaySmallsizes () const
 Gets the units for length used for small sizes display settings. More...
 
- Public Member Functions inherited from LSAttributeContainer
LSString getTypeName () const
 Gets the type name of this instance. More...
 
LSString getName () const
 Gets the name of the container. More...
 
LSResult::Result setName (LSString name)
 Sets the name of the container. More...
 
LSString getUuid () const
 Returns the unique id of the container. More...
 
LSString assignUuid ()
 Assigns a unique id to the container if the container does not not yet have a unique id. More...
 
unsigned int getNumAttributes () const
 Get the number of attributes in the container. More...
 
LSString getAttributeName (unsigned int index) const
 Get the name of an attribute in the container. More...
 
unsigned int getAttributeIndex (LSString name) const
 Get the index of an attribute in the container. More...
 
LSAttribute getAttribute (unsigned int index) const
 Get an attribute based on its index. More...
 
LSAttribute getAttribute (LSString name) const
 Get an attribute based on its name. More...
 
LSResult::Result setAttribute (unsigned int index, const LSAttribute &attribute)
 Set an attribute based on its index. More...
 
LSResult::Result setAttribute (LSString name, const LSAttribute &attribute)
 Set an attribute based on its name. More...
 
LSResult::Result addCustomAttribute (LSString name, const LSAttribute &attribute)
 Add a new custom attribute to the container. More...
 
bool removeCustomAttribute (LSString name)
 Remove a custom attribute from the container. More...
 
unsigned int getNumFields () const
 Returns the number of fields in the container. More...
 
ref_ptr< LSAttributeContainergetField (unsigned int index) const
 Returns the field at position n in the container. More...
 
ref_ptr< LSAttributeContainergetField (const LSString &name) const
 Returns the field with the given name. More...
 
LSResult::Result addField (const LSString &name, const LSString &typeName, ref_ptr< LSAttributeContainer > &fieldOut)
 Add a field to the container. More...
 
bool rmField (const LSString &name)
 Removes the field with a given name from the container. More...
 

Additional Inherited Members

- Public Types inherited from LSAppContext
enum  LengthUnit : unsigned int {
  Meter = 0, Centimeter = 1, Millimeter = 2,
  Yard = 3, Feet = 4, Inch = 5,
  YardUS = 6, FeetUS = 7, InchUS = 8
}
 Unit of measurement of length. More...
 
enum  AngleUnit : unsigned int { Degree = 0, Radian = 1, Gon = 2 }
 Unit of measurement of an angle. More...
 
- Public Attributes inherited from LSAppContext
LSSignal< ref_ptr< LSEvent > > onClose
 Dispatched when the app context is being destroyed. More...
 
- Protected Member Functions inherited from LSRefType
void ref () const
 Increments the internal reference counter. More...
 
void unref () const
 Decrements the internal reference counter. More...
 

Detailed Description

Context class for standalone apps.

Standalone apps should create a single LSStandaloneContext instance before accessing ANY API functionality and keep this context alive at least as long as any other API object. NEVER create multiple contexts in the same process. This is not supported. Avoid creating multiple sequential contexts in the same process. This is known to cause problems and is also not supported officially.

Version
Added in SCENE API Version 2.0.0.

Constructor & Destructor Documentation

◆ LSStandaloneContext() [1/3]

STANDALONE_API_EXPORT LSStandaloneContext ( )

Constructor Default constructor for use cases without an API key.

Version
SCENE API Version 2.0.0

◆ LSStandaloneContext() [2/3]

STANDALONE_API_EXPORT LSStandaloneContext ( LSString  key)

Constructor.

Parameters
keyKey to unlock extended functionality, e.g. registration
Version
SCENE API Version 2.0.10

◆ LSStandaloneContext() [3/3]

STANDALONE_API_EXPORT LSStandaloneContext ( LSStandaloneConfig const &  config)
Parameters
configComplete Context configuration (default equal to default ctor)
Version
SCENE API 2.0.31

Member Function Documentation

◆ setCurrentWorkspace()

STANDALONE_API_EXPORT LSResult::Result setCurrentWorkspace ( ref_ptr< LSWorkspace workspace)

Sets a default workspace as is required by some operations.

Parameters
workspaceThe workspace to become default.
Version
SCENE API Version 2.0.14