Ceetron Data Provider Framework
CDPDataProviderFactory.h
1 //##################################################################################################
2 //
3 // Ceetron Data Provider Framework
4 //
5 // --------------------------------------------------------------------------------------------
6 // Copyright (C) 2018, Ceetron AS
7 //##################################################################################################
8 
9 #pragma once
10 
11 #include <string>
12 #include "CDPBaseTypes.h"
13 
14 class CDPDataProvider;
15 class CDPString;
16 
17 
18 //==================================================================================================
19 //
20 //
21 //
22 //==================================================================================================
24 {
25 public:
26  virtual ~CDPDataProviderInfo() {};
27 
28  virtual void setFileDescription(const CDPString& description) = 0;
29  virtual void setFileMask(const CDPString& mask) = 0;
30 
31  virtual void publishInitOptionBool(const CDPString& optionKey, const CDPString& optionDescription, bool defaultValue) = 0;
32  virtual void publishInitOptionDouble(const CDPString& optionKey, const CDPString& optionDescription, cdp_double_t defaultValue) = 0;
33  virtual void publishInitOptionString(const CDPString& optionKey, const CDPString& optionDescription, const CDPString& defaultValue) = 0;
34 };
35 
36 
37 //==================================================================================================
38 //
39 //
40 //
41 //==================================================================================================
43 {
44 public:
45  virtual ~CDPDataProviderFactory() {};
46 
47  virtual bool getProviderInfo(CDPDataProviderInfo* info) = 0;
48  virtual bool isSupportedByProvider(const CDPString& modelKey) = 0;
49 
51  virtual void destroyProviderInstance(CDPDataProvider* instance) = 0;
52 };
virtual void publishInitOptionString(const CDPString &optionKey, const CDPString &optionDescription, const CDPString &defaultValue)=0
Definition: CDPDataProviderFactory.cpp:65
virtual void destroyProviderInstance(CDPDataProvider *instance)=0
Definition: CDPDataProviderFactory.cpp:136
Definition: CDPDataProviderFactory.h:42
virtual void publishInitOptionBool(const CDPString &optionKey, const CDPString &optionDescription, bool defaultValue)=0
Definition: CDPDataProviderFactory.cpp:45
Definition: CDPDataProvider.h:23
Definition: CDPDataProviderFactory.h:23
Definition: CDPString.h:22
virtual CDPDataProvider * createProviderInstance()=0
Definition: CDPDataProviderFactory.cpp:124
virtual bool isSupportedByProvider(const CDPString &modelKey)=0
Definition: CDPDataProviderFactory.cpp:112
virtual void setFileDescription(const CDPString &description)=0
Definition: CDPDataProviderFactory.cpp:26
virtual bool getProviderInfo(CDPDataProviderInfo *info)=0
Definition: CDPDataProviderFactory.cpp:96
virtual void publishInitOptionDouble(const CDPString &optionKey, const CDPString &optionDescription, cdp_double_t defaultValue)=0
Definition: CDPDataProviderFactory.cpp:55
virtual void setFileMask(const CDPString &mask)=0
Definition: CDPDataProviderFactory.cpp:35