Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
~
Functions
a
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
~
Variables
a
c
d
e
f
g
i
l
m
n
u
v
Typedefs
a
c
d
e
g
i
m
n
o
p
s
u
v
Enumerations
_
e
g
h
i
p
Enumerator
_
a
b
c
d
e
f
g
h
i
l
m
n
p
r
s
t
u
v
w
x
y
Classes
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
~
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
~
Variables
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
v
w
x
y
Typedefs
a
c
d
e
f
h
i
k
l
m
n
o
p
q
r
s
t
v
Enumerations
Enumerator
a
c
d
e
f
i
n
o
r
s
t
w
x
Related Functions
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
y
Functions
c
d
e
g
i
l
m
o
p
r
t
Variables
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
p
s
t
u
Enumerations
a
b
c
d
e
f
g
i
p
s
t
u
Enumerator
a
b
c
d
e
f
g
i
l
m
p
r
s
t
u
y
Macros
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
ChunkAdapterDcam.h
Go to the documentation of this file.
1
//-----------------------------------------------------------------------------
2
// (c) 2004 by Basler Vision Technologies
3
// Section: Vision Components
4
// Project: GenApi
5
// Author: Fritz Dierks
6
// $Header$
7
//
8
// License: This file is published under the license of the EMVA GenICam Standard Group.
9
// A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
10
// If for some reason you are missing this file please contact the EMVA or visit the website
11
// (http://www.genicam.org) for a full copy.
12
//
13
// THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
14
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
17
// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
20
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
21
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23
// POSSIBILITY OF SUCH DAMAGE.
24
//-----------------------------------------------------------------------------
30
#ifndef GENAPI_CHUNKADAPTERDCAM_H
31
#define GENAPI_CHUNKADAPTERDCAM_H
32
33
#include <cstring>
34
#include <
Base/GCTypes.h
>
35
#include <
GenApi/ChunkAdapter.h
>
36
#include <
GenApi/Compatibility.h
>
37
38
namespace
GENAPI_NAMESPACE
39
{
40
41
void
GENAPI_DECL
SET_GUID
(GUID& name, uint32_t l, uint16_t w1, uint16_t w2, uint8_t b1, uint8_t b2, uint8_t b3, uint8_t b4, uint8_t b5, uint8_t b6, uint8_t b7, uint8_t b8);
42
43
44
// make sure everything is properly packed
45
# pragma pack(push, 1)
46
47
typedef
struct
DCAM_CHUNK_TRAILER
48
{
49
GUID
ChunkID
;
50
uint32_t
ChunkLength
;
51
uint32_t
InverseChunkLength
;
52
explicit
DCAM_CHUNK_TRAILER
() :
ChunkLength
(0),
InverseChunkLength
(0)
53
{
54
memset(&
ChunkID
, 0,
sizeof
(
ChunkID
));
55
}
56
}
DCAM_CHUNK_TRAILER
;
57
58
typedef
struct
DCAM_CHECKSUM
59
{
60
uint32_t
CRCChecksum
;
61
}
DCAM_CHECKSUM
;
62
63
// restore the previous packing
64
# pragma pack(pop)
65
/* ------------------------------------------- */
66
68
class
GENAPI_DECL
CChunkAdapterDcam
:
public
CChunkAdapter
69
{
70
71
public
:
73
CChunkAdapterDcam
(
INodeMap
* pNodeMap = NULL,
int64_t
MaxChunkCacheSize = -1);
74
76
virtual
~
CChunkAdapterDcam
();
77
79
virtual
bool
CheckBufferLayout(uint8_t *pBuffer,
int64_t
BufferLength);
80
82
virtual
void
AttachBuffer(uint8_t *pBuffer,
int64_t
BufferLength,
AttachStatistics_t
*pAttachStatistics = NULL);
83
85
bool
HasCRC(uint8_t *pBuffer,
int64_t
BufferLength);
86
88
bool
CheckCRC(uint8_t *pBuffer,
int64_t
BufferLength);
89
90
protected
:
92
uint32_t CRC16(
const
unsigned
char
*pData, uint32_t nbyLength );
93
95
bool
CheckBuffer(
const
unsigned
char
* pData, uint32_t nbyLength );
96
97
};
98
99
}
100
101
#endif // GENAPI_CHUNKADAPTERDCAM_H
GENAPI_NAMESPACE
Lexical analyzer for CIntSwissKnife.
Definition:
Destructible.h:30
GENAPI_NAMESPACE::SET_GUID
void GENAPI_DECL SET_GUID(GUID &name, uint32_t l, uint16_t w1, uint16_t w2, uint8_t b1, uint8_t b2, uint8_t b3, uint8_t b4, uint8_t b5, uint8_t b6, uint8_t b7, uint8_t b8)
GENAPI_NAMESPACE::DCAM_CHECKSUM
struct GENAPI_NAMESPACE::DCAM_CHECKSUM DCAM_CHECKSUM
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER::InverseChunkLength
uint32_t InverseChunkLength
Definition:
ChunkAdapterDcam.h:51
GENAPI_NAMESPACE::CChunkAdapterDcam
Connects a chunked DCAM buffer to a node map.
Definition:
ChunkAdapterDcam.h:68
GENAPI_NAMESPACE::AttachStatistics_t
Delivers information about the attached chunks and nodes.
Definition:
ChunkAdapter.h:45
GENAPI_DECL
#define GENAPI_DECL
Definition:
GenApiDll.h:55
GENAPI_NAMESPACE::INodeMap
GENICAM_INTERFACE INodeMap
Interface to access the node map.
Definition:
INode.h:52
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER
struct GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER DCAM_CHUNK_TRAILER
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER
Definition:
ChunkAdapterDcam.h:47
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER::DCAM_CHUNK_TRAILER
DCAM_CHUNK_TRAILER()
Definition:
ChunkAdapterDcam.h:52
GENAPI_NAMESPACE::CChunkAdapter
Connects a chunked buffer to a node map.
Definition:
ChunkAdapter.h:57
GCTypes.h
Platform-dependent type definitions.
int64_t
__int64 int64_t
Definition:
config-win32.h:21
GENAPI_NAMESPACE::DCAM_CHECKSUM
Definition:
ChunkAdapterDcam.h:58
GENAPI_NAMESPACE::DCAM_CHECKSUM::CRCChecksum
uint32_t CRCChecksum
Definition:
ChunkAdapterDcam.h:60
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER::ChunkID
GUID ChunkID
Definition:
ChunkAdapterDcam.h:49
ChunkAdapter.h
Declaration of the CChunkAdapter class.
Compatibility.h
Definition of macros for cross-platform compatibility.
GENAPI_NAMESPACE::DCAM_CHUNK_TRAILER::ChunkLength
uint32_t ChunkLength
Definition:
ChunkAdapterDcam.h:50
rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Wed Dec 4 2024 03:10:11