ReaderSettingsDataProvider.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: ImportCae
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2020, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeCore/Base.h"
16 #include "CeeImportCae/Base.h"
17 #include "CeeCore/Str.h"
18 #include "CeeCore/RefCountedObject.h"
19 
20 namespace cee {
21 namespace imp {
22 namespace cae {
23 
24 //==================================================================================================
25 //
26 //
27 //
28 //==================================================================================================
29 class CEE_IMP_CAE_EXPORT ReaderSettingsDataProvider
30 {
31 public:
33  enum DataType
34  {
36  BOOL,
37  STRING
38  };
39 
40 public:
41  ReaderSettingsDataProvider(const cee::Str& providerIdString);
43 
46 
47  const cee::Str& providerIdString() const;
48 
49  size_t count() const;
50  const cee::Str& key(size_t index) const;
51  DataType dataType(size_t index) const;
52  const cee::Str& description(size_t index) const;
53  double doubleValue(size_t index) const;
54  bool boolValue(size_t index) const;
55  const cee::Str& stringValue(size_t index) const;
56 
57  size_t keyIndex(const cee::Str& key) const;
58 
59  void setDoubleValue(const cee::Str& key, double value);
60  void setBoolValue(const cee::Str& key, bool value);
61  void setStringValue(const cee::Str& key, const cee::Str& value);
62 
63  void setDescription(const cee::Str& key, const cee::Str& description);
64 
65 private:
66  CEE_PRIVATE_IMPL(ReaderSettingsDataProvider);
67 };
68 
69 } // namespace cae
70 } // namespace imp
71 } // namespace cee
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
A general unicode based string class.
Definition: Str.h:28
DataType
Data value types.
Definition: ReaderSettingsDataProvider.h:33
Settings applicable to the DataProvider plugin reader.
Definition: ReaderSettingsDataProvider.h:29
Enum to indicates that value is a boolean.
Definition: ReaderSettingsDataProvider.h:36
Enum to indicates that value is a double.
Definition: ReaderSettingsDataProvider.h:35