EnumFeature.h
Go to the documentation of this file.
1 /*=============================================================================
2  Copyright (C) 2012 Allied Vision Technologies. All Rights Reserved.
3 
4  Redistribution of this file, in original or modified form, without
5  prior written consent of Allied Vision Technologies is prohibited.
6 
7 -------------------------------------------------------------------------------
8 
9  File: EnumFeature.h
10 
11  Description: Definition of class AVT::VmbAPI::EnumFeature.
12  Intended for use in the implementation of Vimba CPP API.
13 
14 -------------------------------------------------------------------------------
15 
16  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
17  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF TITLE,
18  NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19  DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
20  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23  AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
24  TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 
27 =============================================================================*/
28 
29 #ifndef AVT_VMBAPI_ENUMFEATURE_H
30 #define AVT_VMBAPI_ENUMFEATURE_H
31 
32 #include <VimbaC/Include/VimbaC.h>
36 
37 namespace AVT {
38 namespace VmbAPI {
39 
40 class EnumFeature : public BaseFeature
41 {
42  public:
43  EnumFeature( const VmbFeatureInfo_t *featureInfo, FeatureContainer* const pFeatureContainer );
44 
45  IMEXPORT virtual VmbErrorType SetValue( const char *pValue );
46 
47  IMEXPORT virtual VmbErrorType GetEntry( EnumEntry &entry, const char *pEntryName ) const;
48 
49  IMEXPORT virtual VmbErrorType GetValue( VmbInt64_t &value ) const;
50  IMEXPORT virtual VmbErrorType SetValue( const VmbInt64_t &value );
51 
52  IMEXPORT virtual VmbErrorType IsValueAvailable( const char *pStrValue, bool &available ) const;
53  IMEXPORT virtual VmbErrorType IsValueAvailable( const VmbInt64_t value, bool &available ) const;
54 
55  private:
56  // Copy of enum elements
60 
61  // Array functions to pass data across DLL boundaries
62  IMEXPORT virtual VmbErrorType GetValue( char * const pValue, VmbUint32_t &size ) const;
63  IMEXPORT virtual VmbErrorType GetValues( const char **pValues, VmbUint32_t &size );
64  IMEXPORT virtual VmbErrorType GetValues( VmbInt64_t *pValue, VmbUint32_t &size );
65  IMEXPORT virtual VmbErrorType GetEntries( EnumEntry *pEntries, VmbUint32_t &size );
66 };
67 
68 }} // namespace AVT::VmbAPI
69 
70 #endif
AVT::VmbAPI::EnumEntryVector
std::vector< EnumEntry > EnumEntryVector
Definition: VimbaCPPCommon.h:65
FeatureContainer.h
AVT
Definition: AncillaryData.h:35
AVT::VmbAPI::EnumFeature
Definition: EnumFeature.h:40
VmbErrorType
VmbErrorType
Definition: VmbCommonTypes.h:106
AVT::VmbAPI::EnumEntry
Definition: EnumEntry.h:45
AVT::VmbAPI::EnumFeature::GetEntry
virtual IMEXPORT VmbErrorType GetEntry(EnumEntry &entry, const char *pEntryName) const
Definition: EnumFeature.cpp:94
AVT::VmbAPI::EnumFeature::m_EnumIntValues
Int64Vector m_EnumIntValues
Definition: EnumFeature.h:58
AVT::VmbAPI::EnumFeature::IsValueAvailable
virtual IMEXPORT VmbErrorType IsValueAvailable(const char *pStrValue, bool &available) const
Definition: EnumFeature.cpp:313
AVT::VmbAPI::EnumFeature::GetValues
virtual IMEXPORT VmbErrorType GetValues(const char **pValues, VmbUint32_t &size)
Definition: EnumFeature.cpp:138
AVT::VmbAPI::StringVector
std::vector< std::string > StringVector
Definition: VimbaCPPCommon.h:64
AVT::VmbAPI::BaseFeature
Definition: BaseFeature.h:39
BaseFeature.h
AVT::VmbAPI::EnumFeature::SetValue
virtual IMEXPORT VmbErrorType SetValue(const char *pValue)
Definition: EnumFeature.cpp:111
VmbUint32_t
unsigned int VmbUint32_t
Definition: VmbCommonTypes.h:73
AVT::VmbAPI::EnumFeature::m_EnumEntries
EnumEntryVector m_EnumEntries
Definition: EnumFeature.h:59
AVT::VmbAPI::EnumFeature::GetValue
virtual IMEXPORT VmbErrorType GetValue(VmbInt64_t &value) const
Definition: EnumFeature.cpp:77
VmbInt64_t
long long VmbInt64_t
Definition: VmbCommonTypes.h:75
AVT::VmbAPI::EnumFeature::EnumFeature
EnumFeature(const VmbFeatureInfo_t *featureInfo, FeatureContainer *const pFeatureContainer)
Definition: EnumFeature.cpp:35
VimbaC.h
AVT::VmbAPI::EnumFeature::m_EnumStringValues
StringVector m_EnumStringValues
Definition: EnumFeature.h:57
VimbaCPPCommon.h
AVT::VmbAPI::EnumFeature::GetEntries
virtual IMEXPORT VmbErrorType GetEntries(EnumEntry *pEntries, VmbUint32_t &size)
Definition: EnumFeature.cpp:260
AVT::VmbAPI::FeatureContainer
Definition: FeatureContainer.h:40
AVT::VmbAPI::Int64Vector
std::vector< VmbInt64_t > Int64Vector
Definition: VimbaCPPCommon.h:62
VmbFeatureInfo
Definition: VimbaC.h:207


avt_vimba_camera
Author(s): Allied Vision Technologies, Miquel Massot
autogenerated on Sat Jun 3 2023 02:14:12