SCENE C++ API  2.1.0
lswebsharesettings.h
1 #pragma once
2 
3 #include <core_api/lsobject.h>
4 
5 namespace SCENE_API {
6 
7 // Forward declarations
8 class LSProject;
9 class LSWebShareSettings_Implementation;
10 
11 //-----------------------------------------------------------------------------
12 // L S W e b S h a r e S e t t i n g s
13 //-----------------------------------------------------------------------------
14 
19 {
20  LS_UNCOPYABLE(LSWebShareSettings)
21 
22 public:
24  enum MAP_TYPE : uint8_t {
25  MT_STANDARD,
26  MT_CLEAR,
27  MT_GAP_FILLED,
28  MT_SCENE
29  };
30 
31  // Enumeration for the progress bar type.
32  enum PROGRESS_TYPE : uint8_t {
33  PT_NONE,
34  PT_DEFAULT
35  };
36 
37 public:
40  CORE_API_EXPORT static ref_ptr<LSWebShareSettings> create();
41 
47  CORE_API_EXPORT bool setStandardProjectSettings(const ref_ptr<const LSProject>& project);
48 
54  CORE_API_EXPORT bool setDataDirectory(const LSString& dataDirectory);
63  CORE_API_EXPORT bool setMapType(const MAP_TYPE type);
70  CORE_API_EXPORT bool setMapBackgroundColor(const double r, const double g, const double b);
77  CORE_API_EXPORT bool setMapForegroundColor(const double r, const double g, const double b);
85  CORE_API_EXPORT bool addLayerBox(const ref_ptr<const LSObject>& layerBox);
90  CORE_API_EXPORT bool addLayoutPlan(const ref_ptr<const LSObject>& layoutPlan);
96  CORE_API_EXPORT bool setApplyClippingBoxes(const bool applyClippingBoxes);
101  CORE_API_EXPORT bool setCreateScanOverlays(const bool createScanOverlays);
107  CORE_API_EXPORT bool setExportHdPanorama(const bool exportHdPanorama);
113  CORE_API_EXPORT bool setExportHdDistance(const bool exportHdDistance);
120  CORE_API_EXPORT bool setExportColor(const bool exportColor);
126  CORE_API_EXPORT bool setExportGray(const bool exportGray);
132  CORE_API_EXPORT bool setId(const LSString& id);
138  CORE_API_EXPORT bool setDisplayName(const LSString& displayName);
144  CORE_API_EXPORT bool setDescription(const LSString& description);
150  CORE_API_EXPORT bool setKeywords(const LSString& keywords);
156  CORE_API_EXPORT bool setLatitude(const double latitude);
162  CORE_API_EXPORT bool setLongitude(const double longitude);
168  CORE_API_EXPORT bool setImagePath(const LSString& imagePath);
174  CORE_API_EXPORT bool setIsPublic(const bool isPublic);
179  CORE_API_EXPORT bool setFeatured(const bool featured);
188  CORE_API_EXPORT bool setProgressType(const PROGRESS_TYPE type);
189 
194  CORE_API_EXPORT bool check() const;
195 
196 protected:
197  LS_INTERFACE(LSWebShareSettings, LSAttributeContainer)
198 };
199 
200 }