SCENE C++ API
2.1.0
Scanner_API
scanner_api
lsscanner.h
1
#pragma once
2
3
#include <core_api/lsglobaldefinitions.h>
4
#include <core_api/lsinterface.h>
5
#include <core_api/lsstring.h>
6
#include <core_api/lsattributecontainer.h>
7
8
#include <scanner_api/lsfuturetask.h>
9
10
namespace
SCENE_API {
11
12
// Forward declarations
13
class
LSScanner_Implementation;
14
20
class
LSScanner
:
public
LSInterface
21
{
22
LS_UNCOPYABLE(
LSScanner
)
23
24
public
:
25
28
SCANNER_API_EXPORT
LSScanner
();
29
32
SCANNER_API_EXPORT
virtual
~LSScanner
();
33
41
SCANNER_API_EXPORT
LSResult::Result
connect
(
LSString
address);
42
47
SCANNER_API_EXPORT
LSResult::Result
disconnect
();
48
53
SCANNER_API_EXPORT
ref_ptr<LSFutureTask>
takeScan
();
54
67
SCANNER_API_EXPORT
ref_ptr<LSFutureTask>
takeRemoteScan
(
LSString
filePath);
68
70
SCANNER_API_EXPORT
void
stopScan
();
71
75
SCANNER_API_EXPORT
bool
shutdown
();
76
81
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getCurrentScanProfile
()
const
;
82
86
SCANNER_API_EXPORT
bool
setCurrentScanProfile
(
ref_ptr<LSAttributeContainer>
scanProfile);
87
91
SCANNER_API_EXPORT
LSPod<std::vector<ref_ptr<LSAttributeContainer>
> >
getScanProfiles
()
const
;
92
97
SCANNER_API_EXPORT
bool
selectScanProfile
(
LSString
profileID);
98
103
SCANNER_API_EXPORT
bool
addScanProfile
(
ref_ptr<LSAttributeContainer>
scanProfile);
104
109
SCANNER_API_EXPORT
bool
removeScanProfile
(
LSString
profileID);
110
114
SCANNER_API_EXPORT
LSPod<std::vector<ref_ptr<LSAttributeContainer>
> >
getScanProjects
()
const
;
115
120
SCANNER_API_EXPORT
bool
selectScanProject
(
LSString
projectID);
121
126
SCANNER_API_EXPORT
bool
addScanProject
(
ref_ptr<LSAttributeContainer>
scanProject);
127
132
SCANNER_API_EXPORT
bool
removeScanProject
(
LSString
projectID);
133
137
SCANNER_API_EXPORT
LSPod<std::vector<ref_ptr<LSAttributeContainer>
> >
getOperators
()
const
;
138
144
SCANNER_API_EXPORT
bool
selectOperator
(
LSString
operatorID);
145
150
SCANNER_API_EXPORT
bool
addOperator
(
ref_ptr<LSAttributeContainer>
scanOperator);
151
156
SCANNER_API_EXPORT
bool
removeOperator
(
LSString
operatorID);
157
162
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getGeneralSettings
()
const
;
163
168
SCANNER_API_EXPORT
bool
setGeneralSettings
(
ref_ptr<LSAttributeContainer>
settings);
169
173
SCANNER_API_EXPORT
LSPod<std::vector<ref_ptr<LSAttributeContainer>
> >
getScans
()
const
;
174
181
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getScanProperties
(
LSString
scanFile)
const
;
182
187
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getServiceInformation
()
const
;
188
193
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getSensorInformation
()
const
;
194
199
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getSystemVersion
()
const
;
200
205
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getFirmwareVersion
()
const
;
206
214
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getScannerStatus
()
const
;
215
222
SCANNER_API_EXPORT
LSPod<std::vector<ref_ptr<LSAttributeContainer>
> >
getStatusMessages
()
const
;
223
231
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getWarningMessage
()
const
;
232
237
SCANNER_API_EXPORT
ref_ptr<LSAttributeContainer>
getScannerParameters
()
const
;
238
243
SCANNER_API_EXPORT
bool
setScannerParameters
(
ref_ptr<LSAttributeContainer>
parameters);
244
251
SCANNER_API_EXPORT
LSPod<std::vector<std::pair<LSString, LSString>
>>
detectScanners
(
int
waitForMs = 1000)
const
;
252
257
SCANNER_API_EXPORT
bool
getSensorTemperature
(
double
& temperature)
const
;
258
259
protected
:
260
LS_INTERFACE(
LSScanner
,
LSInterface
)
261
};
262
263
}