sprk_sketchup.h
1 // Copyright (c) Tech Soft 3D, Inc.
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 #ifndef SPRK_SKETCHUP_H
11 #define SPRK_SKETCHUP_H
12 
13 #include "sprk.h"
14 
15 #ifdef _MSC_VER
16 #ifndef STATIC_APP
17 # ifdef SPRK_SKETCHUP
18 # define SKETCHUP_API __declspec (dllexport)
19 # else
20 # define SKETCHUP_API __declspec (dllimport)
21 # endif
22 #endif
23 #else
24 # include <stddef.h>
25 #endif
26 
27 #ifndef SKETCHUP_API
28 # define SKETCHUP_API
29 #endif
30 
31 namespace HPS
32 {
33 
35 class SKETCHUP_API Sketchup
36 {
37 public:
38 
40  class SKETCHUP_API ImportResultsKit : public SprocketKit
41  {
42  public:
45 
48  ImportResultsKit(ImportResultsKit const & in_kit);
49 
54 
58  ImportResultsKit & operator=(ImportResultsKit && in_that);
59 
60  virtual ~ImportResultsKit();
61 
62  static const HPS::Type staticType = HPS::Type::SketchupImportResultsKit;
63  HPS::Type ObjectType() const { return staticType; };
64 
67  void Set(ImportResultsKit const & in_kit);
68 
71  void Show(ImportResultsKit & out_kit) const;
72 
76  ImportResultsKit & operator=(ImportResultsKit const & in_kit);
77 
80  bool Empty() const;
81 
85  bool Equals(ImportResultsKit const & in_kit) const;
86 
90  bool operator==(ImportResultsKit const & in_kit) const;
91 
95  bool operator!=(ImportResultsKit const & in_kit) const;
96 
101  bool ShowTarget(SegmentKey & out_target, SegmentKey & out_library) const;
102 
106  bool ShowTarget(Model & out_model) const;
107 
111  bool ShowPortfolio(PortfolioKey & out_portfolio) const;
112 
116  bool ShowView(View & out_view) const;
117 
121  bool ShowMainCamera(HPS::CameraKit & out_camera) const;
122 
127  bool ShowScenes(HPS::UTF8Array & out_names, HPS::CameraKitArray & out_cameras) const;
128  };
129 
130 
132  class SKETCHUP_API ImportNotifier : public IONotifier
133  {
134  public:
136  ImportNotifier();
137 
140  ImportNotifier(ImportNotifier const & in_that);
141 
146  ImportNotifier(IONotifier const & in_that);
147 
151  ImportNotifier(ImportNotifier && in_that);
152 
156  ImportNotifier & operator=(ImportNotifier && in_that);
157 
158  virtual ~ImportNotifier();
159 
160  static const HPS::Type staticType = HPS::Type::SketchupImportNotifier;
161  HPS::Type ObjectType() const { return staticType; };
162 
166  ImportNotifier & operator=(ImportNotifier const & in_that);
167 
170  void Assign(ImportNotifier const & in_that);
171 
175  ImportResultsKit GetResults() const;
176  };
177 
179  class SKETCHUP_API ImportOptionsKit : public SprocketKit
180  {
181  public:
184 
187  ImportOptionsKit(ImportOptionsKit const & in_kit);
188 
193 
197  ImportOptionsKit & operator=(ImportOptionsKit && in_that);
198 
199  virtual ~ImportOptionsKit();
200 
201  static const HPS::Type staticType = HPS::Type::SketchupImportOptionsKit;
202  HPS::Type ObjectType() const { return staticType; }
203 
207  static ImportOptionsKit GetDefault();
208 
211  void Set(ImportOptionsKit const & in_kit);
212 
215  void Show(ImportOptionsKit & out_kit) const;
216 
220  ImportOptionsKit & operator=(ImportOptionsKit const & in_kit);
221 
224  bool Empty() const;
225 
229  bool Equals(ImportOptionsKit const & in_kit) const;
230 
234  bool operator==(ImportOptionsKit const & in_kit) const;
235 
239  bool operator!=(ImportOptionsKit const & in_kit) const;
240 
241 
247  ImportOptionsKit & SetTarget(SegmentKey const & in_target, SegmentKey const & in_library);
248 
252  ImportOptionsKit & SetTarget(Model const & in_model);
253 
258  ImportOptionsKit & SetPortfolio(PortfolioKey const & in_portfolio);
259 
264  ImportOptionsKit & SetView(View const & in_view);
265 
269  ImportOptionsKit & SetHiddenData(bool in_state);
270 
274  ImportOptionsKit & SetMetaData(bool in_state);
275 
276 
279  ImportOptionsKit & UnsetTarget();
280 
283  ImportOptionsKit & UnsetPortfolio();
284 
287  ImportOptionsKit & UnsetView();
288 
291  ImportOptionsKit & UnsetHiddenData();
292 
295  ImportOptionsKit & UnsetMetaData();
296 
299  ImportOptionsKit & UnsetEverything();
300 
301 
307  bool ShowTarget(SegmentKey & out_target, SegmentKey & out_library) const;
308 
313  bool ShowTarget(Model & out_model) const;
314 
319  bool ShowPortfolio(PortfolioKey & out_portfolio) const;
320 
324  bool ShowView(View & out_view) const;
325 
329  bool ShowHiddenData(bool & out_state) const;
330 
334  bool ShowMetaData(bool & out_state) const;
335  };
336 
337 
339  class SKETCHUP_API File
340  {
341  public:
346  static ImportNotifier Import(char const * in_file_name, ImportOptionsKit const & in_options);
347 
348  private:
350  File();
351  };
352 
353 private:
355  Sketchup();
356 };
357 
358 }
359 
360 #endif
Definition: sprk_sketchup.h:40
Definition: hps.h:85
Definition: sprk.h:1102
std::vector< CameraKit, Allocator< CameraKit > > CameraKitArray
Array of type HPS::CameraKit.
Definition: hps.h:6965
Definition: sprk.h:1071
Definition: hps.h:8044
HPS::Type ObjectType() const
Definition: sprk_sketchup.h:202
Definition: sprk_sketchup.h:35
Definition: hps.h:49395
HPS::Type ObjectType() const
Definition: sprk_sketchup.h:63
std::vector< UTF8, Allocator< UTF8 > > UTF8Array
Array of type HPS::UTF8.
Definition: hps.h:6948
Definition: sprk_sketchup.h:339
Definition: sprk.h:1317
Definition: sprk_sketchup.h:179
HPS::Type ObjectType() const
Definition: sprk_sketchup.h:161
Definition: sprk_sketchup.h:132
Definition: hps.h:11377
Definition: hps.h:42046