GenApi 3.5.1
EventAdapter.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_EVENTADAPTER_H
30#define GENAPI_EVENTADAPTER_H
31
32#include <GenApi/Types.h>
33#include <GenApi/INodeMap.h>
34#include <GenApi/EventPort.h>
35
36#include <vector>
37
38namespace GENAPI_NAMESPACE
39{
40
45 class GENAPI_DECL CEventAdapter
46 {
47
48 public:
50 CEventAdapter(INodeMap* pNodeMap = NULL);
51
53 virtual ~CEventAdapter();
54 private:
55 CEventAdapter(const CEventAdapter&); // copy constructor not implemented
56 CEventAdapter& operator=(const CEventAdapter &); // assignment operator is not implemented
57 public:
59 virtual void AttachNodeMap(INodeMap* pNodeMap);
60
62 virtual void DetachNodeMap();
63
65 virtual void DeliverMessage( const uint8_t msg[], uint32_t numBytes ) = 0;
66
67
68 protected:
70
71 std::vector<CEventPort*> *m_ppEventPorts;
72 };
73
74}
75
76#endif // GENAPI_EVENTADAPTER_H
Declaration of the CEventPort class.
virtual IBoolean & operator=(bool Value)
Set node value.
Definition IBoolean.h:62
Definition of interface INodeMap.
Common types used in the public GenApi interface.
Delivers Events to ports.
Definition EventAdapter.h:46
virtual void AttachNodeMap(INodeMap *pNodeMap)
Attaches to a node map and retrieves the chunk ports.
std::vector< CEventPort * > * m_ppEventPorts
An array of attached ChunkPorts.
Definition EventAdapter.h:71
CEventAdapter(INodeMap *pNodeMap=NULL)
Constructor.
virtual void DeliverMessage(const uint8_t msg[], uint32_t numBytes)=0
Deliver message.
virtual ~CEventAdapter()
Destructor.
virtual void DetachNodeMap()
Detaches from the node emap.