lib
xspublic
xstypes
xstriggerindicationdata.h
Go to the documentation of this file.
1
2
// Copyright (c) 2003-2021 Xsens Technologies B.V. or subsidiaries worldwide.
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without modification,
6
// are permitted provided that the following conditions are met:
7
//
8
// 1. Redistributions of source code must retain the above copyright notice,
9
// this list of conditions, and the following disclaimer.
10
//
11
// 2. Redistributions in binary form must reproduce the above copyright notice,
12
// this list of conditions, and the following disclaimer in the documentation
13
// and/or other materials provided with the distribution.
14
//
15
// 3. Neither the names of the copyright holders nor the names of their contributors
16
// may be used to endorse or promote products derived from this software without
17
// specific prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
20
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
// THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
// SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
24
// OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR
26
// TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.THE LAWS OF THE NETHERLANDS
28
// SHALL BE EXCLUSIVELY APPLICABLE AND ANY DISPUTES SHALL BE FINALLY SETTLED UNDER THE RULES
29
// OF ARBITRATION OF THE INTERNATIONAL CHAMBER OF COMMERCE IN THE HAGUE BY ONE OR MORE
30
// ARBITRATORS APPOINTED IN ACCORDANCE WITH SAID RULES.
31
//
32
33
34
// Copyright (c) 2003-2021 Xsens Technologies B.V. or subsidiaries worldwide.
35
// All rights reserved.
36
//
37
// Redistribution and use in source and binary forms, with or without modification,
38
// are permitted provided that the following conditions are met:
39
//
40
// 1. Redistributions of source code must retain the above copyright notice,
41
// this list of conditions, and the following disclaimer.
42
//
43
// 2. Redistributions in binary form must reproduce the above copyright notice,
44
// this list of conditions, and the following disclaimer in the documentation
45
// and/or other materials provided with the distribution.
46
//
47
// 3. Neither the names of the copyright holders nor the names of their contributors
48
// may be used to endorse or promote products derived from this software without
49
// specific prior written permission.
50
//
51
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
52
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
53
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
54
// THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
55
// SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
56
// OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
57
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR
58
// TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
59
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.THE LAWS OF THE NETHERLANDS
60
// SHALL BE EXCLUSIVELY APPLICABLE AND ANY DISPUTES SHALL BE FINALLY SETTLED UNDER THE RULES
61
// OF ARBITRATION OF THE INTERNATIONAL CHAMBER OF COMMERCE IN THE HAGUE BY ONE OR MORE
62
// ARBITRATORS APPOINTED IN ACCORDANCE WITH SAID RULES.
63
//
64
65
#ifndef XSTRIGGERINDICATIONDATA_H
66
#define XSTRIGGERINDICATIONDATA_H
67
68
#include "
xstypesconfig.h
"
69
#include "
pstdint.h
"
70
71
#ifdef __cplusplus
72
extern
"C"
{
73
#endif
74
#ifndef __cplusplus
75
#define XSTRIGGERINDICATIONDATA_INITIALIZER { 0, 0, 0, 0 }
76
#endif
77
78
struct
XsTriggerIndicationData
;
79
80
XSTYPES_DLL_API
void
XsTriggerIndicationData_destruct
(
struct
XsTriggerIndicationData
* thisPtr);
81
XSTYPES_DLL_API
int
XsTriggerIndicationData_valid
(
const
struct
XsTriggerIndicationData
* thisPtr);
82
83
#ifdef __cplusplus
84
}
// extern "C"
85
#endif
86
87
89
struct
XsTriggerIndicationData
90
{
91
uint8_t
m_line
;
92
uint8_t
m_polarity
;
93
uint32_t
m_timestamp
;
94
uint16_t
m_frameNumber
;
95
96
#ifdef __cplusplus
97
103
explicit
XsTriggerIndicationData
(uint8_t line = 0, uint8_t polarity = 0,
uint32_t
timestamp = 0, uint16_t frameNumber = 0)
104
:
m_line
(line),
m_polarity
(polarity),
m_timestamp
(timestamp),
m_frameNumber
(frameNumber)
105
{}
106
108
inline
void
clear()
109
{
110
XsTriggerIndicationData_destruct
(
this
);
111
}
112
114
inline
bool
valid()
const
115
{
116
return
0 !=
XsTriggerIndicationData_valid
(
this
);
117
}
118
120
inline
bool
operator ==
(
XsTriggerIndicationData
const
& other)
const
121
{
122
return
m_line
== other.
m_line
&&
123
m_polarity
== other.
m_polarity
&&
124
m_timestamp
== other.
m_timestamp
&&
125
m_frameNumber
== other.
m_frameNumber
;
126
}
127
#endif
128
};
129
130
typedef
struct
XsTriggerIndicationData
XsTriggerIndicationData
;
131
132
#endif
XsTriggerIndicationData::m_polarity
uint8_t m_polarity
The polarity.
Definition:
xstriggerindicationdata.h:92
XsTriggerIndicationData::m_timestamp
uint32_t m_timestamp
The timestamp.
Definition:
xstriggerindicationdata.h:93
XsTriggerIndicationData::m_line
uint8_t m_line
The line number.
Definition:
xstriggerindicationdata.h:91
operator==
bool operator==(const XsFilterProfile &lhs, const XsFilterProfile &rhs)
Returns true if lhs has the same type as rhs.
Definition:
scenariomatchpred.h:81
XsTriggerIndicationData
struct XsTriggerIndicationData XsTriggerIndicationData
Definition:
xstriggerindicationdata.h:130
uint32_t
unsigned int uint32_t
Definition:
pstdint.h:485
XsTriggerIndicationData
Data for a trigger indication message.
Definition:
xstriggerindicationdata.h:89
XsTriggerIndicationData_destruct
XSTYPES_DLL_API void XsTriggerIndicationData_destruct(struct XsTriggerIndicationData *thisPtr)
Destroy the XsTriggerIndicationData object.
Definition:
xstriggerindicationdata.c:73
xstypesconfig.h
pstdint.h
XsTriggerIndicationData_valid
XSTYPES_DLL_API int XsTriggerIndicationData_valid(const struct XsTriggerIndicationData *thisPtr)
XSTYPES_DLL_API
#define XSTYPES_DLL_API
Definition:
xstypesconfig.h:65
XsTriggerIndicationData::m_frameNumber
uint16_t m_frameNumber
The frame number.
Definition:
xstriggerindicationdata.h:94
xsens_mti_driver
Author(s):
autogenerated on Sun Sep 3 2023 02:43:20