All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
FirmwareUpdateInfo.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 // (c) 2016-2017 by Basler AG
3 // Project: GenApi
4 // Author: Andreas Gau
5 //
6 // License: This file is published under the license of the EMVA GenICam Standard Group.
7 // A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
8 // If for some reason you are missing this file please contact the EMVA or visit the website
9 // (http://www.genicam.org) for a full copy.
10 //
11 // THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
12 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
13 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
14 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
15 // OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
16 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
17 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
18 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
19 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
20 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
21 // POSSIBILITY OF SUCH DAMAGE.
22 //-----------------------------------------------------------------------------
27 #ifndef GENFW_FIRMWAREUPDATEINFO_H
28 #define GENFW_FIRMWAREUPDATEINFO_H
29 
30 #include <GenICamFwd.h>
31 #include <Base/GCString.h>
34 
35 
36 
37 namespace GENAPI_NAMESPACE
38 {
39  // Note: Using static const char* here to allow delay loading the library.
40  static const char* const FirmwareUpdateInfoKey_Description = "Description";
41  static const char* const FirmwareUpdateInfoKey_Version = "Version";
42  static const char* const FirmwareUpdateInfoKey_VersionStyle = "VersionStyle";
43  static const char* const FirmwareUpdateInfoValue_VersionStyle_Dotted = "dotted";
44  static const char* const FirmwareUpdateInfoValue_VersionStyle_SemVer = "semver";
45  static const char* const FirmwareUpdateInfoKey_VersionExtractionPattern = "VersionExtractionPattern";
46  static const char* const FirmwareUpdateInfoKey_ReleaseNotes = "ReleaseNotes";
48  static const char* const FirmwareUpdateInfoKey_ReleaseNotesURL = "ReleaseNotesURL";
49  static const char* const FirmwareUpdateInfoKey_UserSetPersistence = "UserSetPersistence";
50  static const char* const FirmwareUpdateInfoKey_SequencerSetPersistence = "SequencerSetPersistence";
51  static const char* const FirmwareUpdateInfoKey_PersistenceSupport_None = "none";
52  static const char* const FirmwareUpdateInfoKey_PersistenceSupport_Full = "full";
53 
54 
55 
56 
73  {
74  public:
82 
83 
93 
94 
104 
105 
112 
113 
121  bool operator==(const CFirmwareUpdateInfo& Rhs) const;
122 
123 
132  bool IsValid() const;
133 
134 
141  const char* GetUpdateFilename() const;
142 
143 
151  const char* GetInfo(const char* InfoKey) const;
152 
153 
162  const char* GetInfo(const char* InfoKey, const char* pDefaultValueIfNotAvailable) const;
163 
164 
171  size_t GetCountOfInfos() const; //can be 0
172 
173 
181  const char* GetInfoKey(size_t Index) const;
182 
183 
191  const char* GetInfo(size_t Index) const;
192 
193 
201  const char* GetInfoLanguageCode(const char* InfoKey) const;
202 
203 
213  GENICAM_NAMESPACE::gcstring ExtractVersionFromDeviceFirmwareVersion(const GENICAM_NAMESPACE::gcstring& DeviceFirmwareVersionFromDevice) const;
214 
215  protected:
216  // Hide the details:
217  class CFirmwareUpdateInfoImpl;
218  CFirmwareUpdateInfoImpl* m_pImpl;
219  };
220 }
221 
222 #endif // GENFW_FIRMWAREUPDATEINFO_H
GENAPI_NAMESPACE
Lexical analyzer for CIntSwissKnife.
Definition: Destructible.h:30
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_VersionExtractionPattern
static const char *const FirmwareUpdateInfoKey_VersionExtractionPattern
Key for the regular expression to extract the device version from the DeviceFirmwareVersion node valu...
Definition: FirmwareUpdateInfo.h:45
FirmwareUpdateDll.h
Defines to be used for FirmwareUpdate library.
GENICAM_NAMESPACE::gcstring
A string class which is a clone of std::string.
Definition: GCString.h:52
GenICamFwd.h
Forward declarations for GenICam types.
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_PersistenceSupport_None
static const char *const FirmwareUpdateInfoKey_PersistenceSupport_None
A possible value for the persistence support.
Definition: FirmwareUpdateInfo.h:51
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_ReleaseNotes
static const char *const FirmwareUpdateInfoKey_ReleaseNotes
Key for the release notes of the update. This key is optional and may not be present.
Definition: FirmwareUpdateInfo.h:47
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_UserSetPersistence
static const char *const FirmwareUpdateInfoKey_UserSetPersistence
Key for the support of user set persistence.
Definition: FirmwareUpdateInfo.h:49
GENAPI_NAMESPACE::FirmwareUpdateInfoValue_VersionStyle_SemVer
static const char *const FirmwareUpdateInfoValue_VersionStyle_SemVer
A possible value for the version style key.
Definition: FirmwareUpdateInfo.h:44
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_Description
static const char *const FirmwareUpdateInfoKey_Description
Key for the description of the update.
Definition: FirmwareUpdateInfo.h:40
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_Version
static const char *const FirmwareUpdateInfoKey_Version
Key for the version of the update.
Definition: FirmwareUpdateInfo.h:41
GENAPI_NAMESPACE::CFirmwareUpdateInfo
Identifies a single firmware update and holds information about the firmware update.
Definition: FirmwareUpdateInfo.h:72
GENAPI_NAMESPACE::operator==
bool operator==(const MyAlloc< T1 > &, const MyAlloc< T2 > &)
Definition: gcmemory.h:98
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_VersionStyle
static const char *const FirmwareUpdateInfoKey_VersionStyle
Key for the format name of the version value. This key is optional and may not be present.
Definition: FirmwareUpdateInfo.h:42
GENFW_DECL
#define GENFW_DECL
Definition: FirmwareUpdateDll.h:52
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_SequencerSetPersistence
static const char *const FirmwareUpdateInfoKey_SequencerSetPersistence
Key for the support of sequencer set persistence.
Definition: FirmwareUpdateInfo.h:50
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_PersistenceSupport_Full
static const char *const FirmwareUpdateInfoKey_PersistenceSupport_Full
A possible value for the persistence support.
Definition: FirmwareUpdateInfo.h:52
GENAPI_NAMESPACE::FirmwareUpdateInfoKey_ReleaseNotesURL
static const char *const FirmwareUpdateInfoKey_ReleaseNotesURL
Key for a link to a web page with more release notes. This key is optional and may not be present.
Definition: FirmwareUpdateInfo.h:48
GENAPI_NAMESPACE::operator=
virtual IBoolean & operator=(bool Value)
Set node value.
Definition: IBoolean.h:64
FirmwareUpdateLinkage.h
helpers for pragma linkage
GENAPI_NAMESPACE::FirmwareUpdateInfoValue_VersionStyle_Dotted
static const char *const FirmwareUpdateInfoValue_VersionStyle_Dotted
A possible value for the version style key.
Definition: FirmwareUpdateInfo.h:43
GCString.h
Portable string implementation.
GENAPI_NAMESPACE::CFirmwareUpdateInfo::m_pImpl
CFirmwareUpdateInfoImpl * m_pImpl
Definition: FirmwareUpdateInfo.h:217


rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Wed Dec 4 2024 03:10:11