SCENE C++ API
2.0.32
Core_API
core_api
lsappcontext.h
1
#pragma once
2
3
#include <core_api/lsglobaldefinitions.h>
4
#include <core_api/lsattributecontainer.h>
5
#include <core_api/lstask.h>
6
#include <core_api/lssignal.h>
7
#include <core_api/lsevent.h>
8
9
namespace
SCENE_API {
10
11
// Forward declarations
12
class
LSAppContext_Implementation;
13
17
class
LSAppContext
:
public
LSAttributeContainer
18
{
19
LS_UNCOPYABLE(
LSAppContext
)
20
21
public
:
22
24
enum class
LengthUnit
: unsigned int
25
{
26
Meter
= 0,
27
Centimeter
= 1,
28
Millimeter
= 2,
29
Yard
= 3,
30
Feet
= 4,
31
Inch
= 5,
32
YardUS
= 6,
33
FeetUS
= 7,
34
InchUS
= 8,
35
LastItem
36
};
37
39
enum class
AngleUnit
: unsigned int
40
{
41
Degree
= 0,
42
Radian
= 1,
43
Gon
= 2,
44
LastItem
45
};
46
50
CORE_API_EXPORT
LSString
getAppName
()
const
;
51
55
CORE_API_EXPORT
LSString
getAppVersion
()
const
;
56
63
CORE_API_EXPORT
LSString
getApiVersion
()
const
;
64
68
CORE_API_EXPORT
LSPod<std::map<LSString, ref_ptr<LSTask>
> >
getRegisteredTasks
()
const
;
69
77
CORE_API_EXPORT
LSString
registerTask
(
LSString
name,
ref_ptr<LSTask>
task);
78
83
CORE_API_EXPORT
bool
disableTask
(
LSString
taskID);
84
106
CORE_API_EXPORT
bool
isModuleAvailable
(
LSString
moduleName)
const
;
107
111
CORE_API_EXPORT
LengthUnit
getUnitsExportLength
()
const
;
112
116
CORE_API_EXPORT
LengthUnit
getUnitsDisplayLength
()
const
;
117
121
CORE_API_EXPORT
AngleUnit
getUnitsDisplayAngle
()
const
;
122
126
CORE_API_EXPORT
LengthUnit
getUnitsDisplaySmallsizes
()
const
;
127
128
130
131
134
LSSignal<ref_ptr<LSEvent>
>
onClose
;
135
137
138
protected
:
139
LS_INTERFACE(
LSAppContext
,
LSAttributeContainer
)
140
};
141
142
}