GenApi  3.5.1
IChunkPort.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 // (c) 2006 by Basler Vision Technologies
3 // Author: Fritz Dierks
4 //
5 // License: This file is published under the license of the EMVA GenICam Standard Group.
6 // A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
7 // If for some reason you are missing this file please contact the EMVA or visit the website
8 // (http://www.genicam.org) for a full copy.
9 //
10 // THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
11 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
12 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
13 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
14 // OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
15 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
16 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
17 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
18 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
19 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
20 // POSSIBILITY OF SUCH DAMAGE.
21 //
22 //-----------------------------------------------------------------------------
29 #ifndef GENAPI_ICHUNKPORT_H
30 #define GENAPI_ICHUNKPORT_H
31 
32 #include <Base/GCBase.h>
33 #include <GenApi/GenApiDll.h>
34 #include <GenApi/Types.h>
35 #include <GenApi/IPort.h>
36 
37 #ifdef _MSC_VER
38 # pragma warning ( push )
39 # pragma warning ( disable : 4251 ) // XXX needs to have dll-interface to be used by clients of class YYY
40 #endif
41 
42 namespace GENAPI_NAMESPACE
43 {
44  //*************************************************************
45  // IChunkPort interface
46  //*************************************************************
47 
49 # define CHUNK_BASE_ADDRESS_REGISTER GC_INT64_MAX
50 
52 # define CHUNK_BASE_ADDRESS_REGISTER_LEN 8
53 
55 # define CHUNK_LENGTH_REGISTER (GC_INT64_MAX-15)
56 
58 # define CHUNK_LENGTH_REGISTER_LEN 8
59 
64  GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IChunkPort : virtual public IPort
65  {
67  virtual GENICAM_NAMESPACE::gcstring GetChunkID() const = 0;
68 
70  virtual EYesNo CacheChunkData() const = 0;
71  };
72 }
73 
74 #ifdef _MSC_VER
75 # pragma warning ( pop )
76 #endif
77 
78 #endif // ifndef GENAPI_ICHUNKPORT_H
Common types used in the public GenApi interface.
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IChunkPort
Interface for ports attached to a chunk.
Definition: IChunkPort.h:67
enum GENAPI_NAMESPACE::_EYesNo EYesNo
Common GenICam base include file.
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IPort
Interface for ports.
Definition: IPort.h:55
virtual EYesNo CacheChunkData() const =0
Indicates if the chunk a adapter must hold a cached version of the chunk data.
A string class which is a clone of std::string.
Definition: GCString.h:50
Definition of interface IPort.
declspec&#39;s to be used for GenApi Windows dll
Definition: ChunkAdapter.h:37