lib
xspublic
xstypes
xscanoutputconfiguration.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 XSCANOUTPUTCONFIGURATION_H
66
#define XSCANOUTPUTCONFIGURATION_H
67
68
#include "
xstypesconfig.h
"
69
#include "
pstdint.h
"
70
#include "
xscandataidentifier.h
"
71
#include "
xscanframeformat.h
"
72
73
#define XS_MAX_CANOUTPUTCONFIGURATIONS (16)
74
75
#ifdef __cplusplus
76
extern
"C"
{
77
#endif
78
#ifndef __cplusplus
79
#define XSCANOUTPUTCONFIGURATION_INITIALIZER { XCDI_None, 0 }
80
#endif
81
82
struct
XsCanOutputConfiguration
;
83
84
XSTYPES_DLL_API
void
XsCanOutputConfiguration_swap
(
struct
XsCanOutputConfiguration
* a,
struct
XsCanOutputConfiguration
* b);
85
86
#ifdef __cplusplus
87
}
// extern "C"
88
#endif
89
90
97
struct
XsCanOutputConfiguration
98
{
99
XsCanFrameFormat
m_frameFormat
;
100
XsCanDataIdentifier
m_dataIdentifier
;
101
uint32_t
m_id
;
102
uint16_t
m_frequency
;
103
104
#ifdef __cplusplus
105
inline
XsCanOutputConfiguration
()
107
:
m_frameFormat
(
XCFF_11Bit_Identifier
)
108
,
m_dataIdentifier
(
XCDI_Invalid
)
109
,
m_id
(0)
110
,
m_frequency
(0)
111
{}
112
114
inline
XsCanOutputConfiguration
(
XsCanFrameFormat
il,
XsCanDataIdentifier
di,
uint32_t
id
, uint16_t freq)
115
:
m_frameFormat
(il)
116
,
m_dataIdentifier
(di)
117
,
m_id
(id)
118
,
m_frequency
(freq)
119
{}
120
122
inline
bool
operator ==
(
const
XsCanOutputConfiguration
& other)
const
123
{
124
return
(
m_frameFormat
== other.
m_frameFormat
&&
125
m_dataIdentifier
== other.
m_dataIdentifier
&&
126
m_id
== other.
m_id
&&
127
m_frequency
== other.
m_frequency
);
128
}
129
131
inline
bool
operator != (
const
XsCanOutputConfiguration
& other)
const
132
{
133
return
!(*
this
== other);
134
}
135
#endif
136
};
137
typedef
struct
XsCanOutputConfiguration
XsCanOutputConfiguration
;
138
139
#endif
XsCanOutputConfiguration::m_frequency
uint16_t m_frequency
The frequency.
Definition:
xscanoutputconfiguration.h:102
XsCanOutputConfiguration
struct XsCanOutputConfiguration XsCanOutputConfiguration
Definition:
xscanoutputconfiguration.h:137
XCFF_11Bit_Identifier
@ XCFF_11Bit_Identifier
Definition:
xscanframeformat.h:80
XCDI_Invalid
@ XCDI_Invalid
Definition:
xscandataidentifier.h:84
XsCanDataIdentifier
XsCanDataIdentifier
Defines the data identifiers for CAN messages.
Definition:
xscandataidentifier.h:82
operator==
bool operator==(const XsFilterProfile &lhs, const XsFilterProfile &rhs)
Returns true if lhs has the same type as rhs.
Definition:
scenariomatchpred.h:81
uint32_t
unsigned int uint32_t
Definition:
pstdint.h:485
XsCanOutputConfiguration::m_dataIdentifier
XsCanDataIdentifier m_dataIdentifier
The data identifier.
Definition:
xscanoutputconfiguration.h:100
xstypesconfig.h
pstdint.h
XsCanFrameFormat
XsCanFrameFormat
Defines the Frame format for CAN messages.
Definition:
xscanframeformat.h:78
XsCanOutputConfiguration::m_frameFormat
XsCanFrameFormat m_frameFormat
The frame format of the CAN message.
Definition:
xscanoutputconfiguration.h:99
XSTYPES_DLL_API
#define XSTYPES_DLL_API
Definition:
xstypesconfig.h:65
xscanframeformat.h
XsCanOutputConfiguration_swap
XSTYPES_DLL_API void XsCanOutputConfiguration_swap(struct XsCanOutputConfiguration *a, struct XsCanOutputConfiguration *b)
Definition:
xscanoutputconfiguration.c:67
xscandataidentifier.h
XsCanOutputConfiguration
Single data type CAN output configuration.
Definition:
xscanoutputconfiguration.h:97
XsCanOutputConfiguration::m_id
uint32_t m_id
The 11 or 29 bit ID identifier.
Definition:
xscanoutputconfiguration.h:101
xsens_mti_driver
Author(s):
autogenerated on Sun Sep 3 2023 02:43:20