commontypes.h Source File

Reference Documentation

Platform
Napatech SmartNIC
Content Type
Reference Information
Capture Software Version
Link™ Capture Software 12.15
Napatech Software Suite: include/ntapi/commontypes.h Source File
commontypes.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (C) 2025 Napatech A/S.
4  * All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions are met:
8  * * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * * Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * * Neither the name of the Napatech A/S nor the
14  * names of its contributors may be used to endorse or promote products
15  * derived from this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
18  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20  * DISCLAIMED. IN NO EVENT SHALL NAPATECH A/S BE LIABLE FOR ANY
21  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27  *
28  *
29 
30  */
31 
32 /**
33  * @file
34  * This file contains the Common types that can be used by any interface
35  */
36 
37 #ifndef __COMMONTYPES_H__
38 #define __COMMONTYPES_H__
39 
40 #include <limits.h>
41 #include <stdint.h>
42 
43 #if !defined(_MSC_VER) || _MSC_VER > 1800
44 #include <stdbool.h>
45 #else
46 
47 #ifndef __cplusplus
48 
49 /*
50  * In Visual C++ 5.0 and later, bool is implemented as a built-in type with a
51  * size of 1 byte hence the C version should have same size. Use unsigned char
52  * as MSVC does not provide _Bool.
53  */
54 typedef unsigned char bool;
55 #define true 1
56 #define false 0
57 
58 #endif
59 
60 #define __bool_true_false_are_defined 1
61 
62 #endif // _MSC_VER
63 
64 /**
65  * Define cross-platform NT_INLINE keyword for static inline functions
66  */
67 #ifndef NT_INLINE
68 #ifdef _MSC_VER
69 #define NT_INLINE __forceinline
70 #else
71 #define NT_INLINE inline
72 #endif
73 #endif
74 
75 #define NT_MAX_NUM_ADAPTERS 16
76 
77 /** Enumeration used for specifying the flavour when generation the ini file. */
79  INI_FILE_CREATE_MODE_MINIMUM = 0, // Only the needed minimum set of parameters are include in the ini file.
80  INI_FILE_CREATE_MODE_NORMAL, // Parameters which have been used during the initialisation are included.
81  INI_FILE_CREATE_MODE_FULL, // All possibile/allowed parameters are inclued.
82  INI_FILE_CREATE_MODE_DEBUG, // Used when DEBUG compiler flag set (special test build of the driver)
84 };
85 
86 /** Enumeration used for specifying the flavour when generation the ini help text file. */
88  HELP_FILE_CREATE_MODE_NORMAL = 0, // The help text is generated including the normally used parameters
89  HELP_FILE_CREATE_MODE_FULL, // Special purpose/experimental (hidden) parameters are included in the help text file.
90  HELP_FILE_CREATE_MODE_SECRET, // Parameters for internal/development purpose are included (aka secrets).
92 };
93 
94 /**
95  * Timestamp type.
96  */
98  NT_TIMESTAMP_TYPE_NATIVE = 0, //!< 64-bit 10 ns resolution timer from a base of 0
99  NT_TIMESTAMP_TYPE_NATIVE_NDIS, //!< 64-bit 10 ns resolution timer from a base of January 1, 1601
100  NT_TIMESTAMP_TYPE_NATIVE_UNIX, //!< 64-bit 10 ns resolution timer from a base of January 1, 1970
101 #ifndef DOXYGEN_INTERNAL_ONLY
102  NT_TIMESTAMP_TYPE_NDIS, //!< Deprecated
103 #endif
104  /**
105  * PCAP only supported for Rx, thus no in-line adapter support for these time stamps.
106  */
107  NT_TIMESTAMP_TYPE_PCAP, //!< 32-bit seconds and 32-bit usecs from a base of January 1, 1970
108  NT_TIMESTAMP_TYPE_PCAP_NANOTIME, //!< 32-bit seconds and 32-bit nsecs from a base of January 1, 1970
109  NT_TIMESTAMP_TYPE_UNIX_NANOTIME, //!< 64-bit 1 ns resolution timer from a base of January 1, 1970
110 };
111 
112 
113 /**
114  * Time stamp method
115  */
117  NT_TIMESTAMP_METHOD_UNKNOWN = 0, //!< Time stamp method unknown
118  NT_TIMESTAMP_METHOD_SOF, //!< Time stamp at start of frame
119  NT_TIMESTAMP_METHOD_EOF //!< Time stamp at end of frame
120 };
121 
122 /**
123  * Time stamp inject offset
124  */
126  NT_TIMESTAMP_INJECT_OFFSET_UNKNOWN = 0, //!< Time stamp inject offset mode unknown
127  NT_TIMESTAMP_INJECT_OFFSET_UNSUPPORTED, //!< Time stamp inject offset mode is unsupported
128  NT_TIMESTAMP_INJECT_OFFSET_SOF, //!< Time stamp inject offset calculated from start of frame
129  NT_TIMESTAMP_INJECT_OFFSET_EOF //!< Time stamp inject offset calculated from end of frame
130 };
131 
132 /**
133  * Time stamp inject dynamic offset
134  */
136  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_UNKNOWN = 0, //!< Time stamp inject offset mode unknown
137  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_UNSUPPORTED, //!< Time stamp inject offset mode is unsupported
138  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_SOF, //!< Time stamp inject dynamice offset - start of frame
139  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_EOF, //!< Time stamp inject dynamice offset - end of frame
140  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_L3, //!< Time stamp inject dynamice offset - start of layer 3
141  NT_TIMESTAMP_INJECT_DYNAMIC_OFFSET_L4 //!< Time stamp inject dynamice offset - start of layer 4
142 };
143 
144 /**
145  * Relative TX timing method
146  */
148  NT_TX_TIMING_UNSUPPORTED = 0, //!< Changing TX timing is unsupported
149  NT_TX_TIMING_ABSOLUTE, //!< TX is made absolute (time stamp based)
150  NT_TX_TIMING_RELATIVE, //!< TX is made relative (IFG based)
151 };
152 
153 /**
154  * Thread Priority
155  */
157  NT_THREAD_PRIORITY_NORMAL, //!< System default priority. Probably timesliced
158  NT_THREAD_PRIORITY_RT_LOW, //!< Not timesliced, but can be interrupted by higher priority threads
159  NT_THREAD_PRIORITY_RT_HIGH //!< This highest priority obtainable. Thread will run uninterrupted to completion.
160 };
161 
162 /**
163  * WIS Mode bit mask
164  */
166  NT_WIS_MODE_DISABLED = 0x00, //!< OC-192 WIS mode HW Support but disabled
167  NT_WIS_MODE_ENABLED = 0x01, //!< OC-192 WIS mode enabled
168 };
169 
171  NT_HIGH_FREQUENCY_SAMPLING_DISABLE = 0, //!< High frequency sampling not used
172  NT_HIGH_FREQUENCY_SAMPLING_ENABLE, //!< High frequency sampling activated
173 };
174 
176  NT_OS_TIMESYNC_FAILOVER_DISABLE = 0, //!< OS Timesync failover disabled
177  NT_OS_TIMESYNC_FAILOVER_ENABLE, //!< OS Timesync failover enabled
178 };
179 
180 /**
181  * Host buffer types.
182  * Used to select between RX or TX host buffers.
183  */
185  NT_NET_HOSTBUFFER_TYPE_UNKNOWN=0, //!< Host buffer type is unknown
186  NT_NET_HOSTBUFFER_TYPE_RX, //!< Host buffer type is RX (ntservice.ini file tag: HostBufferRx)
187  NT_NET_HOSTBUFFER_TYPE_TX, //!< Host buffer type is TX (ntservice.ini file tag: HostBufferTx)
188 };
189 
190 /**
191  * Host buffer layout
192  * Defined how the host buffer layout is defined
193  */
195  NT_NET_HOSTBUFFER_LAYOUT_UNKNOWN=0, //!< Unknown host buffer layout
196  NT_NET_HOSTBUFFER_LAYOUT_SLABS, //!< The host buffer is slab based. Packets are in this mode not allowed to spread across slabs and the slab is therefore terminated if the next packet doesn't fit into the current slab. A slab is 1MB.
197  NT_NET_HOSTBUFFER_LAYOUT_CIRCULAR, //!< The host buffer consist of one circular buffer there packets can start at the tail and continue at the head.
198 };
199 
200 /**
201  * The stream types supported.
202  */
204  NT_MSG_ENDPOINT_UNKNOWN=0, //!< Unknown stream type
205  NT_MSG_ENDPOINT_NET_STREAM, //!< Network stream
206  NT_MSG_ENDPOINT_CONFIG_STREAM, //!< Configuration stream
207  NT_MSG_ENDPOINT_STAT_STREAM, //!< Statistics stream
208  NT_MSG_ENDPOINT_EVENT_STREAM, //!< Event stream
209  NT_MSG_ENDPOINT_INFO_STREAM, //!< Info stream
210  NT_MSG_ENDPOINT_SYSTEM_STREAM, //!< System-wide stream. @note This is vital and is automatically created in NT_Init() and must
211  //!< only be created once per process. The reason is that when it closes we expect the process is
212  //!< terminated and will perform system-wide cleanup for all resourced linked to that process.
213  NT_MSG_ENDPOINT_NET_CMD, //!< Network stream related command endpoint
215 };
216 
217 /**
218  * Adapter types
219  */
221  NT_ADAPTER_TYPE_UNKNOWN=0, //!< Unknown adapter type
222  NT_ADAPTER_TYPE_NT4E, //!< NT4E network adapter
223  NT_ADAPTER_TYPE_NT20E, //!< NT20E network adapter
224  NT_ADAPTER_TYPE_NT4E_STD, //!< NT4E-STD network adapter
225  NT_ADAPTER_TYPE_NT4E_PORT, //!< NTPORT4E expansion adapter
226  NT_ADAPTER_TYPE_NTBPE, //!< NTBPE bypass adapter
227  NT_ADAPTER_TYPE_NT20E2, //!< NT20E2 network adapter
230  NT_ADAPTER_TYPE_NT40E2_1, //!< NT40E2-1 network adapter
231  NT_ADAPTER_TYPE_NT40E2_4, //!< NT40E2-4 network adapter
232  NT_ADAPTER_TYPE_NT4E2_4T_BP, //!< NT4E2-4T-BP bypass network adapter
233  NT_ADAPTER_TYPE_NT4E2_4_PTP, //!< NT4E2-4 PTP network adapter with IEEE1588
234  NT_ADAPTER_TYPE_NT20E2_PTP, //!< NT20E2 PTP network adapter with IEEE1588
235  NT_ADAPTER_TYPE_NT40E3_4_PTP, //!< NT40E3 network adapter with IEEE1588
236  NT_ADAPTER_TYPE_NT100E3_1_PTP, //!< NT100E3 network adapter with IEEE1588
237  NT_ADAPTER_TYPE_NT20E3_2_PTP, //!< NT20E3 network adapter with IEEE1588
238  NT_ADAPTER_TYPE_NT80E3_2_PTP, //!< NT80E3 network adapter with IEEE1588
239  NT_ADAPTER_TYPE_NT200E3_2, //!< NT200E3 network adapter
240  NT_ADAPTER_TYPE_NT200A01, //!< NT200A01 network adapter
241  NT_ADAPTER_TYPE_NT200A01_2X100 = NT_ADAPTER_TYPE_NT200A01, //!< NT200A01 2 x 100 Gbps network adapter
242  NT_ADAPTER_TYPE_NT40A01_4X1, //!< NT40A01_4X1 network adapter with IEEE1588
243  NT_ADAPTER_TYPE_NT200A01_2X40, //!< NT200A01 2 x 40 Gbps network adapter
244  NT_ADAPTER_TYPE_NT80E3_2_PTP_8X10, //!< NT80E3 8 x 10 Gbps network adapter with IEEE1588
245  //
246  NT_ADAPTER_TYPE_INTEL_A10_4X10, //!<Intel PAC A10 GX 4 x 10 Gbps network adapter
247  NT_ADAPTER_TYPE_INTEL_A10_1X40, //!<Intel PAC A10 GX 1 x 40 Gbps network adapter
248  //
249  NT_ADAPTER_TYPE_NT200A01_8X10, //!< NT200A01 8 x 10 Gbps network adapter
250  NT_ADAPTER_TYPE_NT200A02_2X100, //!< NT200A02 2 x 100 Gbps network adapter
251  NT_ADAPTER_TYPE_NT200A02_2X40, //!< NT200A02 2 x 40 Gbps network adapter
253  NT_ADAPTER_TYPE_NT200A01_2X10_25 = NT_ADAPTER_TYPE_NT200A01_2X25, //!< NT200A01 2 x 10/25 Gbps network adapter
255  NT_ADAPTER_TYPE_NT200A02_2X10_25 = NT_ADAPTER_TYPE_NT200A02_2X25, //!< NT200A02 2 x 10/25 Gbps network adapter
257  NT_ADAPTER_TYPE_NT200A02_4X10_25 = NT_ADAPTER_TYPE_NT200A02_4X25, //!< NT200A02 4 x 10/25 Gbps network adapter
258  NT_ADAPTER_TYPE_NT200A02_8X10, //!< NT200A02 8 x 10 Gbps network adapter
260  NT_ADAPTER_TYPE_NT50B01_2X10_25 = NT_ADAPTER_TYPE_NT50B01_2X25, //!< NT50B01 2 x 10/25 Gbps network adapter
261  NT_ADAPTER_TYPE_NT200A02_2X1_10, //!< NT200A02 2 x 1/10 Gbps network adapter
262  NT_ADAPTER_TYPE_NT100A01_4X1_10, //!< NT100A01 4 x 1/10 Gbps network adapter
263  NT_ADAPTER_TYPE_NT100A01_4X10_25, //!< NT100A01 4 x 10/25 Gbps network adapter
264  NT_ADAPTER_TYPE_NT50B01_2X1_10, //!< NT50B01 2 x 1/10 Gbps network adapter
265  NT_ADAPTER_TYPE_NT40A11_4X1_10, //!< NT40A11 4 x 1/10 Gbps network adapter
266  NT_ADAPTER_TYPE_NT400D11_2X100, //!< NT400D11 2 x 100 Gbps network adapter
267  NT_ADAPTER_TYPE_NT400D11_2X40, //!< NT400D11 2 x 40 Gbps network adapter
268  NT_ADAPTER_TYPE_NT400D11_8X10_25, //!< NT400D11 8 x 10/25 Gbps network adapter
269  NT_ADAPTER_TYPE_NT400D11_2X200, //!< NT400D11 2 x 200 Gbps network adapter
270  NT_ADAPTER_TYPE_NT400D13_2X200, //!< NT400D13 2 x 200 Gbps network adapter
271  NT_ADAPTER_TYPE_NT400D13_2X100, //!< NT400D13 2 x 100 Gbps network adapter
272  NT_ADAPTER_TYPE_NT400D13_2X40, //!< NT400D13 2 x 40 Gbps network adapter
273  NT_ADAPTER_TYPE_NT400D13_8X10_25, //!< NT400D13 8 x 10/25 Gbps network adapter
274  NT_ADAPTER_TYPE_WDPDK, //!< DPDK wrapper
275  NT_ADAPTER_TYPE_F2070X_2X100, //!< F2070X 2 x 100 Gbps network adapter
276  NT_ADAPTER_TYPE_F3076X_2X100, //!< F3076X 2 x 100 Gbps network adapter
277  //
278 
279  //
280  //
281 //
282 
283 };
284 
286 
287 /**
288  * Adapter PCI generation
289  */
290 
298 };
299 
301 
302 /**
303  * Adapter hardware generation
304  *
305  * NOTE: This is *NOT* equal to PCIe generation
306  */
307 
314 };
315 
317 
318 /**
319  * Adapter FPGA Architecture Generation
320  *
321  * NOTE: may differ from Adapter (hardware) generation
322  */
323 
330 };
331 
333 
334 /**
335  * Packet descriptor type
336  */
338  NT_PACKET_DESCRIPTOR_TYPE_UNKNOWN, //!< Unknown descriptor type
339  NT_PACKET_DESCRIPTOR_TYPE_PCAP, //!< Descriptor type is PCAP
340  NT_PACKET_DESCRIPTOR_TYPE_NT, //!< Descriptor type is NT
341  NT_PACKET_DESCRIPTOR_TYPE_NT_EXTENDED, //!< Descriptor type is NT extended
342  NT_PACKET_DESCRIPTOR_TYPE_DYNAMIC, //!< Descriptor type is Dynamic (fields can be programmed via NTPL)
343 };
344 
345 /*
346  * Napatech Dynamic Descriptor formats.
347  */
349  NT_DYNAMIC_DESCRIPTOR_FORMAT_1 = 1, //!< Dynamic descriptor with 3 dynamic offsets and a dynamic IPProcotol selector.
350  NT_DYNAMIC_DESCRIPTOR_FORMAT_2 = 2, //!< Dynamic descriptor with 2 dynamic offsets and a dynamic IPProcotol selector.
351  NT_DYNAMIC_DESCRIPTOR_FORMAT_3 = 3, //!< Dynamic descriptor 3 is suited for various TX inline scenarios
352  NT_DYNAMIC_DESCRIPTOR_FORMAT_4 = 4, //!< Dynamic descriptor 4 is suited for various correlation scenarios
353 };
354 
355 /**
356  * Product types
357  */
359  NT_PRODUCT_TYPE_UNKNOWN=0, //!< Unknown product type
360  NT_PRODUCT_TYPE_CAPTURE, //!< Capture product type
361  NT_PRODUCT_TYPE_INLINE, //!< In-line product type
362  NT_PRODUCT_TYPE_CAPTURE_REPLAY, //!< Capture-replay product type
363  NT_PRODUCT_TYPE_TRAFFIC_GEN, //!< Traffic generator product type
364  NT_PRODUCT_TYPE_BYPASS, //!< Bypass product type
365 };
366 
368 
369 /**
370  * Profile types
371  */
373  NT_PROFILE_TYPE_UNKNOWN=0, //!< Unknown profile type
374  NT_PROFILE_TYPE_CAPTURE=1<<0, //!< Capture profile type
375  NT_PROFILE_TYPE_INLINE=1<<1, //!< In-line profile type
376  NT_PROFILE_TYPE_CAPTURE_REPLAY=1<<2, //!< Capture-replay profile type
377  NT_PROFILE_TYPE_TRAFFIC_GEN=1<<3, //!< Traffic generator profile type
378 };
379 
380 /**
381  * Product family
382  */
384  NT_PRODUCT_FAMILY_UNKNOWN=0, //!< Unknown product family
385  NT_PRODUCT_FAMILY_NT, //!< NT adapter family
386  NT_PRODUCT_FAMILY_NIC, //!< Standard NIC product family
387 };
388 
390 
392  NT_FEATURE_TYPE_BYPASS=1<<0, //!< The adapter has support for bypass.
393  NT_FEATURE_TYPE_NEBS=1<<1, //!< The adapter is a NEBS adapter.
394  NT_FEATURE_TYPE_FAN=1<<2, //!< The adapter has an alternative FAN.
395  NT_FEATURE_TYPE_FEC_SUPP=1<<3, //!< The adapter has support for FEC.
396  NT_FEATURE_TYPE_SOF_SUPP=1<<4, //!< The adapter has support for SOF.
397  NT_FEATURE_TYPE_UNDERSIZED_PKT=1<<5, //!< The adapter has support for undersized packets.
398 };
399 
400 /**
401  * SDRAM module sizes
402  */
404  NT_SDRAM_SIZE_UNKNOWN=0, //!< Unknown RAM size
405  NT_SDRAM_SIZE_0G = (-1), //!< RAM size 0 gigabytes
406  NT_SDRAM_SIZE_512M = 0x1, //!< RAM size 512 megabytes
407  NT_SDRAM_SIZE_1G = 0x2, //!< RAM size 1 gigabyte
408  NT_SDRAM_SIZE_2G = 0x4, //!< RAM size 2 gigabytes
409  NT_SDRAM_SIZE_4G = 0x8, //!< RAM size 4 gigabytes
410  NT_SDRAM_SIZE_5G = 0xA, //!< RAM size 5 gigabytes
411 
412  NT_SDRAM_SIZE_8G = 0x10, //!< RAM size 8 gigabytes
413  NT_SDRAM_SIZE_10G = 0x14, //!< RAM size 10 gigabytes
414  NT_SDRAM_SIZE_12G = 0x18, //!< RAM size 12 gigabytes
415  NT_SDRAM_SIZE_13G5= 0x1B, //!< RAM size 13.5 gigabytes
416 
417  NT_SDRAM_SIZE_16G = 0x20, //!< RAM size 16 gigabytes
418  NT_SDRAM_SIZE_18G = 0x24, //!< RAM size 18 gigabytes
419  NT_SDRAM_SIZE_20G = 0x28, //!< RAM size 20 gigabytes
420 
421  NT_SDRAM_SIZE_24G = 0x30, //!< RAM size 24 gigabytes
422  NT_SDRAM_SIZE_27G = 0x36, //!< RAM size 27 gigabytes
423 
424  NT_SDRAM_SIZE_36G = 0x48, //!< RAM size 36 gigabytes
425 
426 };
427 
428 /**
429  * SDRAM module type
430  */
432  NT_SDRAM_TYPE_UNKNOWN=0, //!< Unknown RAM type
433  NT_SDRAM_TYPE_DDR2 = 0x1, //!< RAM is DDR2
434  NT_SDRAM_TYPE_DDR3 = 0x2, //!< RAM is DDR3
435  NT_SDRAM_TYPE_DDR4 = 0x3, //!< RAM is DDR4
436 };
437 
438 /**
439  * SDRAM OnboardMemorySplit
440  */
447 };
448 
449 /**
450  * Port types
451  * The use of all non-generic XX_NOT_PRESENT is deprecated - use
452  * NT_PORT_TYPE_NIM_NOT_PRESENT instead
453  */
455  NT_PORT_TYPE_NOT_AVAILABLE = 0, //!< The NIM/port type is not available (unknown)
456  NT_PORT_TYPE_NOT_RECOGNISED, //!< The NIM/port type not recognized
457  NT_PORT_TYPE_RJ45, //!< RJ45 type
458  NT_PORT_TYPE_SFP_NOT_PRESENT, //!< SFP type but slot is empty
459  NT_PORT_TYPE_SFP_SX, //!< SFP SX
460  NT_PORT_TYPE_SFP_SX_DD, //!< SFP SX digital diagnostic
461  NT_PORT_TYPE_SFP_LX, //!< SFP LX
462  NT_PORT_TYPE_SFP_LX_DD, //!< SFP LX digital diagnostic
463  NT_PORT_TYPE_SFP_ZX, //!< SFP ZX
464  NT_PORT_TYPE_SFP_ZX_DD, //!< SFP ZX digital diagnostic
465  NT_PORT_TYPE_SFP_CU, //!< SFP copper
466  NT_PORT_TYPE_SFP_CU_DD, //!< SFP copper digital diagnostic
469  NT_PORT_TYPE_XPAK, //!< XPAK
470  NT_PORT_TYPE_SFP_CU_TRI_SPEED, //!< SFP copper tri-speed
471  NT_PORT_TYPE_SFP_CU_TRI_SPEED_DD, //!< SFP copper tri-speed digital diagnostic
472  NT_PORT_TYPE_SFP_PLUS, //!< SFP+ type
473  NT_PORT_TYPE_SFP_PLUS_NOT_PRESENT, //!< SFP+ type but slot is empty
474  NT_PORT_TYPE_XFP_NOT_PRESENT, //!< XFP type but slot is empty
475  NT_PORT_TYPE_QSFP_PLUS_NOT_PRESENT, //!< QSFP type but slot is empty
476  NT_PORT_TYPE_QSFP_PLUS, //!< QSFP type
477  NT_PORT_TYPE_SFP_PLUS_PASSIVE_DAC, //!< SFP+ Passive DAC
478  NT_PORT_TYPE_SFP_PLUS_ACTIVE_DAC, //!< SFP+ Active DAC
479  NT_PORT_TYPE_CFP4, //!< CFP4 type
480  NT_PORT_TYPE_CFP4_LR4 = NT_PORT_TYPE_CFP4, //!< CFP4 100G, LR4 type
481  NT_PORT_TYPE_CFP4_NOT_PRESENT, //!< CFP4 type but slot is empty
482  NT_PORT_TYPE_INITIALIZE, //!< The port type is not fully established yet
483  NT_PORT_TYPE_NIM_NOT_PRESENT, //!< Generic "Not present"
484  NT_PORT_TYPE_HCB, //!< Test mode: Host Compliance Board
485  NT_PORT_TYPE_NOT_SUPPORTED, //!< The NIM type is not supported in this context
486  NT_PORT_TYPE_SFP_PLUS_DUAL_RATE, //!< SFP+ supports 1G/10G
487  NT_PORT_TYPE_CFP4_SR4, //!< CFP4 100G, SR4 type
488  NT_PORT_TYPE_QSFP28_NOT_PRESENT, //!< QSFP28 type but slot is empty
489  NT_PORT_TYPE_QSFP28, //!< QSFP28 type
490  NT_PORT_TYPE_QSFP28_SR4, //!< QSFP28-SR4 type
491  NT_PORT_TYPE_QSFP28_LR4, //!< QSFP28-LR4 type
492  NT_PORT_TYPE_QSFP_PLUS_4X10, //!< Deprecated. The port type should not mention speed eg 4x10 or 1x40
493  NT_PORT_TYPE_QSFP_PASSIVE_DAC_4X10, //!< Deprecated. The port type should not mention speed eg 4x10 or 1x40
495  NT_PORT_TYPE_QSFP_ACTIVE_DAC_4X10, //!< Deprecated. The port type should not mention speed eg 4x10 or 1x40
497  NT_PORT_TYPE_SFP_28, //!< SFP28 type
498  NT_PORT_TYPE_SFP_28_SR, //!< SFP28-SR type
499  NT_PORT_TYPE_SFP_28_LR, //!< SFP28-LR type
500  NT_PORT_TYPE_SFP_28_CR_CA_L, //!< SFP28-CR-CA-L type
501  NT_PORT_TYPE_SFP_28_CR_CA_S, //!< SFP28-CR-CA-S type
502  NT_PORT_TYPE_SFP_28_CR_CA_N, //!< SFP28-CR-CA-N type
503  NT_PORT_TYPE_QSFP28_CR_CA_L, //!< QSFP28-CR-CA-L type
504  NT_PORT_TYPE_QSFP28_CR_CA_S, //!< QSFP28-CR-CA-S type
505  NT_PORT_TYPE_QSFP28_CR_CA_N, //!< QSFP28-CR-CA-N type
506  NT_PORT_TYPE_SFP_28_SR_DR, //!< SFP28-SR-DR type
507  NT_PORT_TYPE_SFP_28_LR_DR, //!< SFP28-LR-DR type
508  NT_PORT_TYPE_SFP_FX, //!< SFP FX
509  NT_PORT_TYPE_SFP_PLUS_CU, //!< SFP+ CU type
510  NT_PORT_TYPE_QSFP28_FR, //!< QSFP28-FR type. Uses PAM4 modulation on one lane only
511  NT_PORT_TYPE_QSFP28_DR, //!< QSFP28-DR type. Uses PAM4 modulation on one lane only
512  NT_PORT_TYPE_QSFP28_LR, //!< QSFP28-LR type. Uses PAM4 modulation on one lane only
513  NT_PORT_TYPE_QSFP56_SR4, //!< QSFP56-SR4 type
514  NT_PORT_TYPE_QSFP56_DR4, //!< QSFP56-DR4 type
515  NT_PORT_TYPE_QSFP56_FR4, //!< QSFP56-FR4 type
516  NT_PORT_TYPE_QSFP56_LR4, //!< QSFP56-LR4 type
517  NT_PORT_TYPE_QSFP28_BIDI //!< QSFP28-BIDI type
518 };
519 
521 
522 /**
523  * Link state.\n
524  * Just after start of ntservice the link state might be unknown since the
525  * monitoring routine is busy reading NIM state and NIM data. This might also
526  * be the case after a NIM is plugged into an interface.
527  * The error state indicates a HW reading error.
528  */
530  NT_LINK_STATE_UNKNOWN = 0, //!< The link state has not been read yet
531  NT_LINK_STATE_DOWN = 1, //!< The link state is DOWN
532  NT_LINK_STATE_UP = 2, //!< The link state is UP
533  NT_LINK_STATE_ERROR = 3 //!< The link state could not be read
534 };
535 
537 
538 /**
539  * Link speed.
540  * Note this is a bitmask.
541  */
544  NT_LINK_SPEED_10M = 0x0001, //!< 10 Mbps
545  NT_LINK_SPEED_100M = 0x0002, //!< 100 Mbps
546  NT_LINK_SPEED_1G = 0x0004, //!< 1 Gbps (Autoneg only)
547  NT_LINK_SPEED_10G = 0x0008, //!< 10 Gbps (Autoneg only)
548  NT_LINK_SPEED_40G = 0x0010, //!< 40 Gbps (Autoneg only)
549  NT_LINK_SPEED_100G = 0x0020, //!< 100 Gbps (Autoneg only)
550  NT_LINK_SPEED_50G = 0x0040, //!< 50 Gbps (Autoneg only)
551  NT_LINK_SPEED_25G = 0x0080, //!< 25 Gbps (Autoneg only)
552  NT_LINK_SPEED_200G = 0x0100, //!< 200 Gbps (Autoneg only)
553  NT_LINK_SPEED_400G = 0x0200, //!< 400 Gbps (Autoneg only)
554  NT_LINK_SPEED_800G = 0x0400, //!< 800 Gbps (Autoneg only)
555  NT_LINK_SPEED_END //!< always keep this entry as the last in enum
556 };
557 
559 
560 /**
561  * Link duplex mode
562  */
565  NT_LINK_DUPLEX_HALF = 0x01, //!< Half duplex
566  NT_LINK_DUPLEX_FULL = 0x02, //!< Full duplex
567 };
568 
570 
571 /**
572  * Link MDI mode
573  */
576  NT_LINK_MDI_AUTO = 0x01, //!< MDI auto
577  NT_LINK_MDI_MDI = 0x02, //!< MDI mode
578  NT_LINK_MDI_MDIX = 0x04, //!< MDIX mode
579 };
580 
582 
583 /**
584  * Link Auto/Manual mode
585  */
589  NT_LINK_AUTONEG_OFF = NT_LINK_AUTONEG_MANUAL, //!< Auto negotiation OFF
591  NT_LINK_AUTONEG_ON = NT_LINK_AUTONEG_AUTO, //!< Auto negotiation ON
592 };
593 
595 
596 
597 /**
598  * ForceTxLink mode
599  */
604 };
605 
607 
608 
609 /**
610  * TX laser power mode
611  */
613  NT_TX_POWER_UNKNOWN=0, //!< Illegal value - should newer be read or written
614  NT_TX_POWER_NA, //!< Reading: Changing TX Power is not supported.\n Writing: Not valid for writing.
615  NT_TX_POWER_ON, //!< Reading: TX power is on.\n Writing: Turns on the TX power
616  NT_TX_POWER_OFF //!< Reading: TX power is off.\n Writing: Turns off the TX power
617 };
618 
620 
621 /**
622  * Port ID mode
623  */
624 typedef enum NtPortId_e {
625  NT_PORT_ID_UNKNOWN=0, //!< Illegal value - should newer be read or written
626  NT_PORT_ID_NA, //!< Reading: Port Identification is not supported.\n Writing: Not valid for writing.
627  NT_PORT_ID_ON, //!< Reading: Port Identification is on.\n Writing: Turns on the port ID
628  NT_PORT_ID_OFF //!< Reading: Port Identification is off.\n Writing: Turns off the port ID
629 } NtPortId_t;
630 
631 
632 /**
633  * Port FEC (Forward Error Correction) mode
634  */
635 typedef enum NtPortFec_e {
636  NT_PORT_FEC_NA = 0, //!< FEC is not available/unsupported
637  NT_PORT_FEC_ON, //!< FEC is active
638  NT_PORT_FEC_OFF //!< FEC is inactive
639 } NtPortFec_t;
640 
641 
642 /**
643  * Ifg unit
644  */
646  NT_IFG_NS = 0, //!< Ifg unit is in 10 ns ticks
647  NT_IFG_BYTE = 1, //!< Ifg unit is in bytes
648 };
649 
650 
651 /**
652  *
653  */
655  NT_BYPASS_TRIGGER_NONE = 0x00, //!< TODO:
656  NT_BYPASS_TRIGGER_PWRFAIL = 0x01, //!< TODO:
657 };
658 
659 /**
660  *
661  */
663  NT_BYPASS_PORT_STATE_UNKNOWN=0, //!< NT_BYPASS_PORT_STATE_UNKNOWN should be used when reading
664  NT_BYPASS_PORT_STATE_IGNORE=0, //!< NT_BYPASS_PORT_STATE_IGNORE should be used when writing
667 };
668 
669 /**
670  *
671  */
673  NT_OPERATION_UNKNOWN = 0, //!< TODO:
674  NT_OPERATION_READ = 1, //!< TODO:
675  NT_OPERATION_WRITE = 2, //!< TODO:
676 };
677 
678 
679 
680 /**
681  * Time sync protocol
682  */
684  NT_TIMESYNC_PROTOCOL_NT=0, //!< Time sync set to NT time sync
685  NT_TIMESYNC_PROTOCOL_OS, //!< Time sync set to OS time sync
686  NT_TIMESYNC_PROTOCOL_PPS_REL, //!< Time sync set to PPS time sync with no external time source
687  NT_TIMESYNC_PROTOCOL_PPS_ABS, //!< Time sync set to PPS time sync with external time source
688  NT_TIMESYNC_PROTOCOL_FREE, //!< Time sync set to free running
689 };
690 
691 /**
692  * Time sync PPS actions
693  */
695  NT_TIMESYNC_PPS_ACTION_REFERENCE_TIME=0, //!< Send reference TOD to driver
696  NT_TIMESYNC_PPS_ACTION_ENABLE, //!< Enable PPS clock synchronization
697  NT_TIMESYNC_PPS_ACTION_DISABLE, //!< Disable PPS clock synchronization
698 };
699 
700 /**
701  * Time sync connectors
702  */
704  NT_TIMESYNC_CONNECTOR_NONE = 0, //!< Time sync connector unused
705  NT_TIMESYNC_CONNECTOR_EXT = 0x01, //!< Bit mask for external time sync connnector
706  NT_TIMESYNC_CONNECTOR_INT1 = 0x02, //!< Bit mask for internal 1 time sync connnector
707  NT_TIMESYNC_CONNECTOR_INT2 = 0x04, //!< Bit mask for internal 2 time sync connnector
708 };
709 
710 
711 /**
712  * Time sync PPS current clock synchonization mode
713  */
715  NT_TIMESYNC_PPS_MODE_NOT_SYNCING = 0, //!< Currently not using PPS synchronization
716  NT_TIMESYNC_PPS_MODE_PHASE_SYNCING, //!< Currently using phase synchronization method
717  NT_TIMESYNC_PPS_MODE_TIME_SYNCING //!< Currently using time synchronization
718 };
719 
720 
721 /**
722  * Time sync connector settings
723  */
725  NT_TIMESYNC_CONNECTOR_SETTING_NONE = 0, //!< Connector set to None. Connector not used
726  NT_TIMESYNC_CONNECTOR_SETTING_NTTS_IN = 1, //!< Connector set to NttsIn (NT-TS input)
727  NT_TIMESYNC_CONNECTOR_SETTING_PPS_IN = 2, //!< Connector set to PpsIn (PPS input)
728  NT_TIMESYNC_CONNECTOR_SETTING_10MPPS_IN = 3, //!< 10MPPS - Frequency reference input (not yet supported)
729  NT_TIMESYNC_CONNECTOR_SETTING_NTTS_OUT = 4, //!< Connector set to NttsOut (NT-TS output)
730  NT_TIMESYNC_CONNECTOR_SETTING_PPS_OUT = 5, //!< Connector set to PpsOut (PPS output)
731  NT_TIMESYNC_CONNECTOR_SETTING_10MPPS_OUT = 6, //!< 10MPPS - Frequency output (not yet supported)
732  NT_TIMESYNC_CONNECTOR_SETTING_REPEAT_INT1 = 7, //!< Connector set to repeat connector Int1
733  NT_TIMESYNC_CONNECTOR_SETTING_REPEAT_INT2 = 8, //!< Connector set to repeat connector Int2
734  NT_TIMESYNC_CONNECTOR_SETTING_REPEAT_EXT1 = 9, //!< Connector set to repeat connector Ext1
735 };
736 
738 
739 /**
740  * Time sync connector status
741  */
743  NT_TIMESYNC_CONNECTOR_STATUS_NONE = 0, //!< Time sync status not applicable (current TS ref is not a connector)
744  NT_TIMESYNC_CONNECTOR_STATUS_SIGNAL_LOST, //!< Time sync signal lost (NT and PPS)
745  NT_TIMESYNC_CONNECTOR_STATUS_SIGNAL_PRESENT, //!< Time sync signal present (NT and PPS)
746 };
747 
748 /**
749  * Time sync in-sync status
750  *
751  * This is set according to the configured parameters
752  * TimeSyncOSInSyncLimit, TimeSyncPTPInSyncLimit,
753  * TimeSyncPPSInSyncLimit and TimeSyncNTTSInSyncLimit
754  */
756  NT_TIMESYNC_INSYNC_STATUS_NONE = 0, //!< Time sync in-sync status not applicable. Have recently lost the reference signal and no new measurements done yet or reference is FreeRun.
757  NT_TIMESYNC_INSYNC_STATUS_IN_SYNC, //!< Time sync in-sync status is in-sync.
758  NT_TIMESYNC_INSYNC_STATUS_NOT_IN_SYNC //!< Time sync in-sync status is not in-sync.
759 };
760 
761 /**
762  * Time sync PPS status
763  */
765  NT_TIMESYNC_PPS_STATUS_NONE = 0, //!< PPS clock synchronization status invalid
766  NT_TIMESYNC_PPS_STATUS_ENABLED = 0x01, //!< PPS clock synchronization status enabled by app
767  NT_TIMESYNC_PPS_STATUS_DISABLED = 0x02, //!< //!< PPS clock synchronization status disabled
768 };
769 
770 /**
771  * Time sync reference priority
772  */
774  NT_TIMESYNC_REFERENCE_INVALID = 0, //!< Time Sync reference undetermined. Set initially or when in a transition state from one reference to another.
775  NT_TIMESYNC_REFERENCE_FREE_RUN = 1, //!< Time Sync reference id for free running
776  NT_TIMESYNC_REFERENCE_PTP = 2, //!< Time Sync reference id for PTP
777  NT_TIMESYNC_REFERENCE_INT1 = 3, //!< Time Sync reference id for connector internal 1
778  NT_TIMESYNC_REFERENCE_INT2 = 4, //!< Time Sync reference id for connector internal 2
779  NT_TIMESYNC_REFERENCE_EXT1 = 5, //!< Time Sync reference id for connector external 1
780  NT_TIMESYNC_REFERENCE_OSTIME = 6, //!< Time Sync reference id for OS Time
781 };
782 
784 
785 /**
786  * Time sync frequency reference priority
787  */
789  NT_TIMESYNC_FREQ_REFERENCE_INVALID = 0, //!< Time Sync frequency reference id invalid
790  NT_TIMESYNC_FREQ_REFERENCE_FREE_RUN = 1, //!< Time Sync frequency reference id for free running oscillator
791  NT_TIMESYNC_FREQ_REFERENCE_SYNC_E = 2, //!< Time Sync frequency reference id for PTP port Rx recovered clock (SyncE)
792 };
793 
794 /**
795  * Time sync sampling source identifier
796  */
798  NT_TIMESYNC_SAMPLING_EXT1 = 0, //!< Sampling source is External1 connector
799  NT_TIMESYNC_SAMPLING_INT1 = 1, //!< Sampling source is Internal1 connector
800  NT_TIMESYNC_SAMPLING_INT2 = 2, //!< Sampling source is Internal2 connector
801  /* 3,4,5 - for future use */
802  NT_TIMESYNC_SAMPLING_PTP = 6, //!< Sampling source is PTP clock PPS output.
805 };
806 
807 /**
808  * Time sync sampling source status
809  */
811  NT_TIMESYNC_SAMPLING_STATUS_INVALID = 0, //!< Time sync sampling source status unused
812  NT_TIMESYNC_SAMPLING_STATUS_NOT_PRESENT = 1, //!< Time sync sampling source status not present (no signal/undefined)
813  NT_TIMESYNC_SAMPLING_STATUS_PRESENT = 2 //!< Time sync sampling source status present
814 };
815 
816 
817 
818 /**
819  * IEEE 1588 PTP port state identifier
820  */
822  NT_PTP_PORT_STATE_NA = 0, //!< Invalid
823  NT_PTP_PORT_STATE_INIT = 1, //!< Initializing
824  NT_PTP_PORT_STATE_FAULTY = 2, //!< Faulty
825  NT_PTP_PORT_STATE_DISABLED = 3, //!< Disabled
826  NT_PTP_PORT_STATE_LISTENING = 4, //!< Listening
827  NT_PTP_PORT_STATE_PRE_MASTER = 5, //!< Pre Master
828  NT_PTP_PORT_STATE_MASTER = 6, //!< Master
829  NT_PTP_PORT_STATE_PASSIVE = 7, //!< Passive
830  NT_PTP_PORT_STATE_UNCALIBRATED = 8, //!< Uncalibrated
831  NT_PTP_PORT_STATE_SLAVE = 9, //!< Slave
832  NT_PTP_PORT_STATE_INACTIVE = 127, //!< PTP protocol engine inactive
833 };
834 
835 
836 /**
837  * Sensor types
838  */
841  NT_SENSOR_TYPE_TEMPERATURE = 1, //!< Unit: 0.1 degree Celsius
842  NT_SENSOR_TYPE_VOLTAGE = 2, //!< Unit: 1 mV
843  NT_SENSOR_TYPE_CURRENT = 3, //!< Unit: 1 uA
844  NT_SENSOR_TYPE_POWER = 4, //!< Unit: 0.1 uW
845  NT_SENSOR_TYPE_FAN = 5, //!< Unit: 1 RPM (Revolutions Per Minute)
846  NT_SENSOR_TYPE_HIGH_POWER = 6, //!< Unit: 1 mW
848 };
849 
851 
852 /**
853  * Sensor subtypes
854  */
857  NT_SENSOR_SUBTYPE_POWER_OMA, //!< Subtype for NT_SENSOR_TYPE_POWER type on optical modules (optical modulation amplitude measured)
858  NT_SENSOR_SUBTYPE_POWER_AVERAGE, //!< Subtype for NT_SENSOR_TYPE_POWER type on optical modules (average power measured)
859  NT_SENSOR_SUBTYPE_POWER_TOTAL //!< Subtype for NT_SENSOR_TYPE_HIGH_POWER type on adapters (total power consumption)
860 };
861 
863 
864 /**
865  * Sensor source
866  */
868  NT_SENSOR_SOURCE_UNKNOWN = 0x00, //!< Unknown source
869  NT_SENSOR_SOURCE_PORT = 0x01, //!< Sensors located in a port. These are primary sensors - usually NIM temperature. Presence depends on adapter and NIM type.
870  NT_SENSOR_SOURCE_LEVEL1_PORT = 0x02, //!< Level 1 sensors located in a port. These are secondary sensors - usually NIM supply voltage, Tx bias and Rx/Tx optical power. Presence depends on adapter and NIM type.
871 #ifndef DOXYGEN_INTERNAL_ONLY
872  NT_SENSOR_SOURCE_LEVEL2_PORT = 0x04, //!< Level 2 sensors located in a port
873 #endif
874  NT_SENSOR_SOURCE_ADAPTER = 0x08, //!< Sensors mounted on the adapter
875  NT_SENSOR_SOURCE_LEVEL1_ADAPTER = 0x10, //!< Level 1 sensors mounted on the adapter
876 #ifndef DOXYGEN_INTERNAL_ONLY
877  NT_SENSOR_SOURCE_LEVEL2_ADAPTER = 0x20, //!< Level 2 sensors mounted on the adapter
878 #endif
879 };
880 
881 /**
882  * Sensor state
883  */
885  NT_SENSOR_STATE_UNKNOWN = 0, //!< Unknown state
886  NT_SENSOR_STATE_INITIALIZING = 1, //!< The sensor is initializing
887  NT_SENSOR_STATE_NORMAL = 2, //!< Sensor values are within range
888  NT_SENSOR_STATE_ALARM = 3, //!< Sensor values are out of range
889  NT_SENSOR_STATE_NOT_PRESENT = 4 //!< The sensor is not present, for example, SFP without diagnostics
890 };
891 
893 
894 /**
895  * Sensor value
896  */
897 #define NT_SENSOR_NAN (int)0x80000000 //!< Indicates that sensor value or sensor limit is not valid (Not a Number)
898 
899 /**
900  * Master/Slave
901  */
903  NT_BONDING_UNKNOWN, //!< Unknown bonding type
904  NT_BONDING_MASTER, //!< Adapter is master in the bonding
905  NT_BONDING_SLAVE, //!< Adapter is slave in the bonding
906  NT_BONDING_PEER //!< Adapter is bonded, but relationship is symmetric
907 };
908 
909 /**
910  * Maximum name length for streams
911  */
912 #define NT_MAX_STREAM_NAME_LENGTH 20
913 
914 
915 /**
916  * NT20E2 Adapter sensors
917  *
918  * When reading sensors using the @ref InfoStream @ref NtInfoSensor_t
919  * the source must be @ref NtSensorSource_e::NT_SENSOR_SOURCE_ADAPTER to
920  * read the public sensors or @ref NtSensorSource_e::NT_SENSOR_SOURCE_LEVEL1_ADAPTER
921  * to read the Diagnostic sensors.
922  */
924  // Public sensors
925  NT_SENSOR_NT20E2_FPGA, //!< FPGA temperature sensor
926  NT_SENSOR_NT20E2_FAN, //!< FAN speed sensor
927  NT_SENSOR_NT20E2_MAIN_EXAR1_TEMP, //!< Mainboard power supply 1 temperature sensor
928  NT_SENSOR_NT20E2_MAIN_EXAR2_TEMP, //!< Mainboard power supply 2 temperature sensor
929  NT_SENSOR_NT20E2_FRONT_EXAR_TEMP, //!< Front board power supply temperature sensor
930  NT_SENSOR_NT20E2_FRONT_TEMP_PBA, //!< Front board PBA temperature sensor
931 
932  // Diagnostic sensors (Level 1)
933  NT_SENSOR_NT20E2_NT20E2_POWER, //!< Total power consumption (calculated value) - does not generate alarms
934  NT_SENSOR_NT20E2_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
935  NT_SENSOR_NT20E2_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
936  NT_SENSOR_NT20E2_PHY_POWER, //!< PHY power consumption (calculated value) - does not generate alarms
937  NT_SENSOR_NT20E2_SFP_0_POWER, //!< SFP 0 power consumption (calculated value) - does not generate alarms
938  NT_SENSOR_NT20E2_SFP_1_POWER, //!< SFP 1 power consumption (calculated value) - does not generate alarms
939  NT_SENSOR_NT20E2_ADAPTER_MAX, //!< Number of NT20E2 adapter sensors
940 };
941 
942 /**
943  * Generic SFP/SFP+/SFP28 sensors
944  *
945  * These sensors should be used instead of all adapter specific SFP sensors
946  * that have been deprecated..
947  */
954 };
955 
956 /**
957  * Generic QSFP/QSFP+/QSFP28 sensors
958  *
959  * These sensors should be used instead of all adapter specific QSFP sensors
960  * that have been deprecated..
961  */
977 };
978 
979 //!< The following sensors are deprecated - generic types should be used instead
981  // Public sensors
982  NT_SENSOR_NT20E2_NIM, //!< SFP temperature sensor
983 
984  // Diagnostic sensors (Level 1)
985  NT_SENSOR_NT20E2_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
986  NT_SENSOR_NT20E2_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
987  NT_SENSOR_NT20E2_TX, //!< SFP TX power sensor - does not generate alarms
988  NT_SENSOR_NT20E2_RX, //!< SFP RX power sensor - does not generate alarms
989  NT_SENSOR_NT20E2_PORT_MAX, //!< Number of NT20E2 port sensors
990 };
991 
992 /**
993  * NT40E2_4 Adapter sensors
994  *
995  * When reading sensors using the @ref InfoStream @ref NtInfoSensor_t
996  * the source must be @ref NtSensorSource_e::NT_SENSOR_SOURCE_ADAPTER to
997  * read the public sensors or @ref NtSensorSource_e::NT_SENSOR_SOURCE_LEVEL1_ADAPTER
998  * to read the Diagnostic sensors.
999  */
1001  // Public sensors
1002  NT_SENSOR_NT40E2_4_FPGA = NT_SENSOR_NT20E2_FPGA, //!< FPGA temperature sensor
1004  NT_SENSOR_NT40E2_4_MAIN_EXAR1_TEMP = NT_SENSOR_NT20E2_MAIN_EXAR1_TEMP, //!< Mainboard power supply 1 temperature sensor
1005  NT_SENSOR_NT40E2_4_MAIN_EXAR2_TEMP = NT_SENSOR_NT20E2_MAIN_EXAR2_TEMP, //!< Mainboard power supply 2 temperature sensor
1006  NT_SENSOR_NT40E2_4_FRONT_EXAR_TEMP = NT_SENSOR_NT20E2_FRONT_EXAR_TEMP, //!< Front board power supply temperature sensor
1007  NT_SENSOR_NT40E2_4_FRONT_TEMP_PBA = NT_SENSOR_NT20E2_FRONT_TEMP_PBA, //!< Front board PBA temperature sensor
1008 
1009  // Diagnostic sensors (Level 1)
1010  NT_SENSOR_NT40E2_4_NT40E2_4_POWER = NT_SENSOR_NT20E2_NT20E2_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1011  NT_SENSOR_NT40E2_4_FPGA_POWER = NT_SENSOR_NT20E2_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1012  NT_SENSOR_NT40E2_4_DDR3_POWER = NT_SENSOR_NT20E2_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1013  NT_SENSOR_NT40E2_4_PHY_POWER = NT_SENSOR_NT20E2_PHY_POWER, //!< PHY power consumption (calculated value) - does not generate alarms
1014  NT_SENSOR_NT40E2_4_SFP_0_POWER = NT_SENSOR_NT20E2_SFP_0_POWER, //!< SFP 0 power consumption (calculated value) - does not generate alarms
1015  NT_SENSOR_NT40E2_4_SFP_1_POWER = NT_SENSOR_NT20E2_SFP_1_POWER, //!< SFP 1 power consumption (calculated value) - does not generate alarms
1016  NT_SENSOR_NT40E2_4_ADAPTER_MAX = NT_SENSOR_NT20E2_ADAPTER_MAX, //!< Number of NT40E2_4 adapter sensors
1017 };
1018 
1019 //!< The following sensors are deprecated - generic types should be used instead
1021  // Public sensors
1022  NT_SENSOR_NT40E2_4_NIM = NT_SENSOR_NT20E2_NIM, //!< SFP temperature sensor
1023 
1024  // Diagnostic sensors (Level 1)
1025  NT_SENSOR_NT40E2_4_SUPPLY = NT_SENSOR_NT20E2_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1026  NT_SENSOR_NT40E2_4_TX_BIAS = NT_SENSOR_NT20E2_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1027  NT_SENSOR_NT40E2_4_TX = NT_SENSOR_NT20E2_TX, //!< SFP TX power sensor - does not generate alarms
1028  NT_SENSOR_NT40E2_4_RX = NT_SENSOR_NT20E2_RX, //!< SFP RX power sensor - does not generate alarms
1029  NT_SENSOR_NT40E2_4_PORT_MAX = NT_SENSOR_NT20E2_PORT_MAX, //!< Number of NT20E2 port sensors
1030 };
1031 
1032 /**
1033  * NT40E2_1 Adapter sensors
1034  *
1035  * When reading sensors using the @ref InfoStream @ref NtInfoSensor_t
1036  * the source must be @ref NtSensorSource_e::NT_SENSOR_SOURCE_ADAPTER to
1037  * read the public sensors or @ref NtSensorSource_e::NT_SENSOR_SOURCE_LEVEL1_ADAPTER
1038  * to read the Diagnostic sensors.
1039  */
1041  // Public sensors
1042  NT_SENSOR_NT40E2_FPGA, //!< FPGA temperature sensor
1043  NT_SENSOR_NT40E2_FAN, //!< FAN speed sensor
1044  NT_SENSOR_NT40E2_MAIN_EXAR1_TEMP, //!< Mainboard power supply 1 temperature sensor
1045  NT_SENSOR_NT40E2_MAIN_EXAR2_TEMP, //!< Mainboard power supply 2 temperature sensor
1046  NT_SENSOR_NT40E2_FRONT_EXAR_TEMP, //!< Front board power supply temperature sensor
1047  NT_SENSOR_NT40E2_FRONT_TEMP_PBA, //!< Front board PBA temperature sensor
1048 
1049  // Diagnostic sensors (Level 1)
1050  NT_SENSOR_NT40E2_NT40E2_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1051  NT_SENSOR_NT40E2_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1052  NT_SENSOR_NT40E2_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1053  NT_SENSOR_NT40E2_PHY_POWER, //!< PHY power consumption (calculated value) - does not generate alarms
1054  NT_SENSOR_NT40E2_QSFP_POWER, //!< QSFP power consumption (calculated value) - does not generate alarms
1055  NT_SENSOR_NT40E2_ADAPTER_MAX, //!< Number of NT40E2 adapter sensors
1056 };
1057 
1058 //!< The following sensors are deprecated - generic types should be used instead
1060  // Public sensors
1061  NT_SENSOR_NT40E2_NIM, //!< SFP temperature sensor
1062 
1063  // Diagnostic sensors (Level 1)
1064  NT_SENSOR_NT40E2_SUPPLY, //!< QSFP+ supply voltage sensor
1065  NT_SENSOR_NT40E2_TX_BIAS1, //!< QSFP+ TX bias line 0 current sensor
1066  NT_SENSOR_NT40E2_TX_BIAS2, //!< QSFP+ TX bias line 1 current sensor
1067  NT_SENSOR_NT40E2_TX_BIAS3, //!< QSFP+ TX bias line 2 current sensor
1068  NT_SENSOR_NT40E2_TX_BIAS4, //!< QSFP+ TX bias line 3 current sensor
1069  NT_SENSOR_NT40E2_RX1, //!< QSFP+ RX line 0 power sensor
1070  NT_SENSOR_NT40E2_RX2, //!< QSFP+ RX line 1 power sensor
1071  NT_SENSOR_NT40E2_RX3, //!< QSFP+ RX line 2 power sensor
1072  NT_SENSOR_NT40E2_RX4, //!< QSFP+ RX line 3 power sensor
1073  NT_SENSOR_NT40E2_TX1, //!< QSFP+ TX line 0 power sensor
1074  NT_SENSOR_NT40E2_TX2, //!< QSFP+ TX line 1 power sensor
1075  NT_SENSOR_NT40E2_TX3, //!< QSFP+ TX line 2 power sensor
1076  NT_SENSOR_NT40E2_TX4, //!< QSFP+ TX line 3 power sensor
1077  NT_SENSOR_NT40E2_PORT_MAX, //!< Number of NT40E2 port sensors
1078 };
1079 
1081  // Public sensors
1082  NT_SENSOR_NT20E_FPGA, //!< FPGA temperature sensor (junction temperature)
1083  NT_SENSOR_NT20E_PBA, //!< PCB temperature sensor (PCB temperature)
1084  NT_SENSOR_NT20E_ADAPTER_MAX, //!< Number of NT20E adapter sensors
1085 };
1086 
1088  // Public sensors
1089  NT_SENSOR_NT20E_XFP, //!< XFP temperature sensor
1090 
1091  // Diagnostic sensors (Level 1)
1092  NT_SENSOR_NT20E_TX_BIAS, //!< XFP TX bias current sensor - does not generate alarms
1093  NT_SENSOR_NT20E_TX, //!< XFP TX power sensor - does not generate alarms
1094  NT_SENSOR_NT20E_RX, //!< XFP RX power sensor - does not generate alarms
1095  NT_SENSOR_NT20E_PORT_MAX, //!< Number of NT20E port sensors
1096 };
1097 
1099  // Public sensors
1100  NT_SENSOR_NT4E_FPGA, //!< FPGA temperature sensor (junction temperature)
1101  NT_SENSOR_NT4E_PBA, //!< PCB temperature sensor (PCB temperature)
1102  NT_SENSOR_NT4E_ADAPTER_MAX, //!< Number of NT4E adapter sensors
1103 };
1104 
1105 //!< The following sensors are deprecated - generic types should be used instead
1107  // Public sensors
1108  NT_SENSOR_NT4E_SFP, //!< SFP temperature sensor
1109 
1110  // Diagnostic sensors (Level 1)
1111  NT_SENSOR_NT4E_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1112  NT_SENSOR_NT4E_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1113  NT_SENSOR_NT4E_TX, //!< SFP TX power sensor - does not generate alarms
1114  NT_SENSOR_NT4E_RX, //!< SFP RX power sensor - does not generate alarms
1115  NT_SENSOR_NT4E_PORT_MAX, //!< Number NT4E of port sensors
1116 };
1117 
1119  // Public sensors
1120  NT_SENSOR_NT4E2_FPGA, //!< FPGA temperature sensor
1121  NT_SENSOR_NT4E2_FAN, //!< FAN speed sensor
1122  NT_SENSOR_NT4E2_MAIN_EXAR1_TEMP, //!< Mainboard power supply 1 temperature sensor
1123  NT_SENSOR_NT4E2_MAIN_EXAR2_TEMP, //!< Mainboard power supply 2 temperature sensor
1124  NT_SENSOR_NT4E2_FRONT_EXAR_TEMP, //!< Front board power supply temperature sensor
1125  NT_SENSOR_NT4E2_FRONT_TEMP_PBA, //!< Front board PBA temperature sensor
1126  NT_SENSOR_NT4E2_FRONT_TEMP_PHY, //!< Front board PHY temperature sensor
1127 
1128  // Diagnostic sensors (Level 1)
1129  NT_SENSOR_NT4E2_NT4E2_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1130  NT_SENSOR_NT4E2_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1131  NT_SENSOR_NT4E2_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1132  NT_SENSOR_NT4E2_FRONT_POWER, //!< FRONT power consumption (calculated value) - does not generate alarms
1133  NT_SENSOR_NT4E2_ADAPTER_MAX, //!< Number of NT4E2 adapter sensors
1134 };
1135 
1137  // Public sensors
1138  NT_SENSOR_NT4E2_PTP_FPGA, //!< FPGA temperature sensor
1139  NT_SENSOR_NT4E2_PTP_FAN, //!< FAN speed sensor
1140  NT_SENSOR_NT4E2_PTP_MAIN_EXAR1_TEMP, //!< Mainboard power supply 1 temperature sensor
1141  NT_SENSOR_NT4E2_PTP_MAIN_EXAR2_TEMP, //!< Mainboard power supply 2 temperature sensor
1142  NT_SENSOR_NT4E2_PTP_FRONT_EXAR_TEMP, //!< Front board power supply temperature sensor
1143  NT_SENSOR_NT4E2_PTP_FRONT_TEMP_PBA, //!< Front board PBA temperature sensor
1144 
1145  // Diagnostic sensors (Level 1)
1146  NT_SENSOR_NT4E2_PTP_NT4E2_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1147  NT_SENSOR_NT4E2_PTP_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1148  NT_SENSOR_NT4E2_PTP_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1149  NT_SENSOR_NT4E2_PTP_FRONT_POWER, //!< FRONT power consumption (calculated value) - does not generate alarms
1150  NT_SENSOR_NT4E2_PTP_SFP_0_POWER, //!< SFP 0 power consumption (calculated value) - does not generate alarms
1151  NT_SENSOR_NT4E2_PTP_SFP_1_POWER, //!< SFP 1 power consumption (calculated value) - does not generate alarms
1152  NT_SENSOR_NT4E2_PTP_ADAPTER_MAX, //!< Number of NT4E2 adapter sensors
1153 };
1154 
1155 //!< The following sensors are deprecated - generic types should be used instead
1157  // Public sensors
1158  NT_SENSOR_NT4E2_PTP_SFP, //!< SFP temperature sensor
1159 
1160  // Diagnostic sensors (Level 1)
1161  NT_SENSOR_NT4E2_PTP_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1162  NT_SENSOR_NT4E2_PTP_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1163  NT_SENSOR_NT4E2_PTP_TX, //!< SFP TX power sensor - does not generate alarms
1164  NT_SENSOR_NT4E2_PTP_RX, //!< SFP RX power sensor - does not generate alarms
1165  NT_SENSOR_NT4E2_PTP_PORT_MAX, //!< Number NT4E of port sensors
1166 };
1167 
1169  // Public sensors (Level 0)
1170  NT_SENSOR_NT40E3_4_FPGA_TEMP, //!< FPGA temperature sensor
1171  NT_SENSOR_NT40E3_4_FAN_SPEED, //!< FAN speed sensor
1172  NT_SENSOR_NT40E3_4_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1173  NT_SENSOR_NT40E3_4_PSU0_TEMP, //!< Power supply 0 temperature sensor
1174  NT_SENSOR_NT40E3_4_PSU1_TEMP, //!< Power supply 1 temperature sensor
1175  NT_SENSOR_NT40E3_4_OSC_TEMP, //!< Clock oscillator temperature sensor
1176  NT_SENSOR_NT40E3_4_EXT_TEMP, //!< External temperature sensor located at board corner outside enclosure
1177  NT_SENSOR_NT40E3_4_PCB_TEMP, //!< PCB temperature sensor
1178 
1179  // Diagnostic sensors (Level 1)
1180  NT_SENSOR_NT40E3_4_NT40E3_4_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1181  NT_SENSOR_NT40E3_4_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1182  NT_SENSOR_NT40E3_4_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1183  NT_SENSOR_NT40E3_4_NIM_POWER, //!< NIM power consumption (calculated value) - does not generate alarms
1184 
1185  NT_SENSOR_NT40E3_4_L1_MAX, //!< Number of NT40E3P4 level 0,1 board sensors
1187 
1188 //!< The following sensors are deprecated - generic types should be used instead
1190  // Public sensors
1191  NT_SENSOR_NT40E3_4_NIM, //!< SFP temperature sensor
1192 
1193  // Diagnostic sensors (Level 1)
1194  NT_SENSOR_NT40E3_4_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1195  NT_SENSOR_NT40E3_4_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1196  NT_SENSOR_NT40E3_4_TX, //!< SFP TX power sensor - does not generate alarms
1197  NT_SENSOR_NT40E3_4_RX, //!< SFP RX power sensor - does not generate alarms
1198  NT_SENSOR_NT40E3_4_PORT_MAX, //!< Number of NT40E3P4 port sensors
1200 
1202  // Public sensors (Level 0)
1205  NT_SENSOR_NT20E3_2_MCU_TEMP = NT_SENSOR_NT40E3_4_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1206  NT_SENSOR_NT20E3_2_PSU0_TEMP = NT_SENSOR_NT40E3_4_PSU0_TEMP, //!< Power supply 0 temperature sensor
1207  NT_SENSOR_NT20E3_2_PSU1_TEMP = NT_SENSOR_NT40E3_4_PSU1_TEMP, //!< Power supply 1 temperature sensor
1208  NT_SENSOR_NT20E3_2_OSC_TEMP = NT_SENSOR_NT40E3_4_OSC_TEMP, //!< Clock oscillator temperature sensor
1209  NT_SENSOR_NT20E3_2_EXT_TEMP = NT_SENSOR_NT40E3_4_EXT_TEMP, //!< External temperature sensor located at board corner outside enclosure
1211 
1212  // Diagnostic sensors (Level 1)
1213  NT_SENSOR_NT20E3_2_NT20E3_2_POWER = NT_SENSOR_NT40E3_4_NT40E3_4_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1214  NT_SENSOR_NT20E3_2_FPGA_POWER = NT_SENSOR_NT40E3_4_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1215  NT_SENSOR_NT20E3_2_DDR3_POWER = NT_SENSOR_NT40E3_4_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1216  NT_SENSOR_NT20E3_2_NIM_POWER = NT_SENSOR_NT40E3_4_NIM_POWER, //!< NIM power consumption (calculated value) - does not generate alarms
1217 
1218  NT_SENSOR_NT20E3_2_L1_MAX = NT_SENSOR_NT40E3_4_L1_MAX, //!< Number of NT40E3P4 level 0,1 board sensors
1220 
1221 //!< The following sensors are deprecated - generic types should be used instead
1223  // Public sensors
1224  NT_SENSOR_NT20E3_2_NIM = NT_SENSOR_NT40E3_4_NIM, //!< SFP temperature sensor
1225 
1226  // Diagnostic sensors (Level 1)
1227  NT_SENSOR_NT20E3_2_SUPPLY = NT_SENSOR_NT40E3_4_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1228  NT_SENSOR_NT20E3_2_TX_BIAS = NT_SENSOR_NT40E3_4_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1229  NT_SENSOR_NT20E3_2_TX = NT_SENSOR_NT40E3_4_TX, //!< SFP TX power sensor - does not generate alarms
1230  NT_SENSOR_NT20E3_2_RX = NT_SENSOR_NT40E3_4_RX, //!< SFP RX power sensor - does not generate alarms
1231  NT_SENSOR_NT20E3_2_PORT_MAX = NT_SENSOR_NT40E3_4_PORT_MAX, //!< Number of NT40E3P4 port sensors
1233 
1235  // Public sensors (Level 0)
1238  NT_SENSOR_NT40A01_4X1_MCU_TEMP = NT_SENSOR_NT40E3_4_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1239  NT_SENSOR_NT40A01_4X1_PSU0_TEMP = NT_SENSOR_NT40E3_4_PSU0_TEMP, //!< Power supply 0 temperature sensor
1240  NT_SENSOR_NT40A01_4X1_PSU1_TEMP = NT_SENSOR_NT40E3_4_PSU1_TEMP, //!< Power supply 1 temperature sensor
1241  NT_SENSOR_NT40A01_4X1_OSC_TEMP = NT_SENSOR_NT40E3_4_OSC_TEMP, //!< Clock oscillator temperature sensor
1242  NT_SENSOR_NT40A01_4X1_EXT_TEMP = NT_SENSOR_NT40E3_4_EXT_TEMP, //!< External temperature sensor located at board corner outside enclosure
1244 
1245  // Diagnostic sensors (Level 1)
1246  NT_SENSOR_NT40A01_4X1_NT40A01_4X1_POWER = NT_SENSOR_NT40E3_4_NT40E3_4_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1247  NT_SENSOR_NT40A01_4X1_FPGA_POWER = NT_SENSOR_NT40E3_4_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1248  NT_SENSOR_NT40A01_4X1_DDR3_POWER = NT_SENSOR_NT40E3_4_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1249  NT_SENSOR_NT40A01_4X1_NIM_POWER = NT_SENSOR_NT40E3_4_NIM_POWER, //!< NIM power consumption (calculated value) - does not generate alarms
1250 
1251  NT_SENSOR_NT40A01_4X1_L1_MAX = NT_SENSOR_NT40E3_4_L1_MAX, //!< Number of NT40E3P4 level 0,1 board sensors
1253 
1254 //!< The following sensors are deprecated - generic types should be used instead
1256  // Public sensors
1257  NT_SENSOR_NT40A01_4X1_NIM = NT_SENSOR_NT40E3_4_NIM, //!< SFP temperature sensor
1258 
1259  // Diagnostic sensors (Level 1)
1260  NT_SENSOR_NT40A01_4X1_SUPPLY = NT_SENSOR_NT40E3_4_SUPPLY, //!< SFP supply voltage sensor - does not generate alarms
1261  NT_SENSOR_NT40A01_4X1_TX_BIAS = NT_SENSOR_NT40E3_4_TX_BIAS, //!< SFP TX bias current sensor - does not generate alarms
1262  NT_SENSOR_NT40A01_4X1_TX = NT_SENSOR_NT40E3_4_TX, //!< SFP TX power sensor - does not generate alarms
1263  NT_SENSOR_NT40A01_4X1_RX = NT_SENSOR_NT40E3_4_RX, //!< SFP RX power sensor - does not generate alarms
1264  NT_SENSOR_NT40A01_4X1_PORT_MAX = NT_SENSOR_NT40E3_4_PORT_MAX, //!< Number of NT40E3P4 port sensors
1266 
1267 // The NT50B01 adapter sensor id's
1269  // Public sensors (Level 0)
1270  NT_SENSOR_NT50B01_FPGA_TEMP, //!< FPGA temperature sensor
1271  NT_SENSOR_NT50B01_FAN_SPEED, //!< FAN speed sensor
1272  NT_SENSOR_NT50B01_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1273  NT_SENSOR_NT50B01_PSU1_TEMP, //!< Power supply 1 temperature sensor
1274  NT_SENSOR_NT50B01_PSU3_TEMP, //!< Power supply 3 temperature sensor
1275  NT_SENSOR_NT50B01_PSU4_TEMP, //!< Power supply 4 temperature sensor
1276  NT_SENSOR_NT50B01_PCB_TEMP, //!< PCB temperature sensor
1277 
1278  // Diagnostic sensors (Level 1)
1279  NT_SENSOR_NT50B01_NT50B01_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1280 
1281  NT_SENSOR_NT50B01_L1_MAX, //!< Number of NT50B01 level 0,1 board sensors
1283 
1284 // The PSU2GA adapter sensor id's
1286  // Public sensors (Level 0)
1287  NT_SENSOR_PSU2GA_FPGA_TEMP = 0U, //!< FPGA temperature sensor
1288  NT_SENSOR_PSU2GA_FAN_SPEED, //!< FAN speed sensor
1289  NT_SENSOR_PSU2GA_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1290  NT_SENSOR_PSU2GA_PSU1_TEMP, //!< Power supply 1 temperature sensor
1291  NT_SENSOR_PSU2GA_PSU3_TEMP, //!< Power supply 3 temperature sensor
1292  NT_SENSOR_PSU2GA_PSU4_TEMP, //!< Power supply 4 temperature sensor
1293  NT_SENSOR_PSU2GA_PCB_TEMP, //!< PCB temperature sensor
1294 
1295  // Diagnostic sensors (Level 1)
1296  NT_SENSOR_PSU2GA_PSU2GA_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1297 
1298  NT_SENSOR_PSU2GA_L1_MAX, //!< Number of PSU2GA level 0,1 board sensors
1300 
1301 //!< The following sensors are deprecated - generic types should be used instead
1302 //The NIM temperature sensor must be the one with the lowest sensorIndex
1303 //(enum value) in order to be shown by the monitoring tool in port mode
1305  // Public sensors
1306  NT_SENSOR_NT50B01_2X25G_NIM, //!< SFP28 temperature sensor
1307 
1308  // Diagnostic sensors (Level 1)
1309  NT_SENSOR_NT50B01_2X25G_SUPPLY, //!< SFP28 supply voltage sensor
1310  NT_SENSOR_NT50B01_2X25G_TX_BIAS, //!< SFP28 TX bias line 0 current sensor
1311  NT_SENSOR_NT50B01_2X25G_RX, //!< SFP28 RX line 0 power sensor
1312  NT_SENSOR_NT50B01_2X25G_TX, //!< SFP28 TX line 0 power sensor
1313  NT_SENSOR_NT50B01_2X25G_PORT_MAX, //!< Number of NT50B01_2X25G port sensors
1314 };
1315 
1317  // Public sensors (Level 0)
1318  NT_SENSOR_NT80E3_FPGA_TEMP, //!< FPGA temperature sensor
1319  NT_SENSOR_NT80E3_PCI_BRIDGE_TEMP, //!< PCI bridge temperature sensor
1320  NT_SENSOR_NT80E3_FAN_SPEED, //!< FAN speed sensor
1321  NT_SENSOR_NT80E3_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1322  NT_SENSOR_NT80E3_PSU0_TEMP, //!< Power supply 0 temperature sensor
1323  NT_SENSOR_NT80E3_PSU1_TEMP, //!< Power supply 1 temperature sensor
1324  NT_SENSOR_NT80E3_PSU2_0_TEMP, //!< Power supply 2, IC0 junction temperature sensor
1325  NT_SENSOR_NT80E3_PSU2_1_TEMP, //!< Power supply 2, IC1 junction temperature sensor
1326  NT_SENSOR_NT80E3_OSC_TEMP, //!< Clock oscillator temperature sensor
1327  NT_SENSOR_NT80E3_EXT_TEMP, //!< External temperature sensor located at board corner outside enclosure
1328  NT_SENSOR_NT80E3_PCB_TEMP, //!< PCB temperature sensor
1329 
1330  // Diagnostic sensors (Level 1)
1331  NT_SENSOR_NT80E3_NT80E3_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1332  NT_SENSOR_NT80E3_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1333  NT_SENSOR_NT80E3_DDR3_POWER, //!< DDR3 RAM9 power consumption (calculated value) - does not generate alarms
1334  NT_SENSOR_NT80E3_NIM_POWER, //!< NIM power consumption (calculated value) - does not generate alarms
1335  NT_SENSOR_NT80E3_PCI_BRIDGE_POWER, //!< PCI bridge power consumption (calculated value) - does not generate alarms
1336 
1337  NT_SENSOR_NT80E3_L1_MAX, //!< Number of NT80E3 level 0,1 board sensors
1339 
1340 //!< The following sensors are deprecated - generic types should be used instead
1341 //The NIM temperature sensor must be the one with the lowest sensorIndex
1342 //(enum value) in order to be shown by the monitoring tool in port mode
1344  // Public sensors
1345  NT_SENSOR_NT80E3_NIM, //!< QSFP+ temperature sensor
1346 
1347  // Diagnostic sensors (Level 1)
1348  NT_SENSOR_NT80E3_SUPPLY, //!< QSFP+ supply voltage sensor
1349  NT_SENSOR_NT80E3_TX_BIAS1, //!< QSFP+ TX bias line 0 current sensor
1350  NT_SENSOR_NT80E3_TX_BIAS2, //!< QSFP+ TX bias line 1 current sensor
1351  NT_SENSOR_NT80E3_TX_BIAS3, //!< QSFP+ TX bias line 2 current sensor
1352  NT_SENSOR_NT80E3_TX_BIAS4, //!< QSFP+ TX bias line 3 current sensor
1353  NT_SENSOR_NT80E3_RX1, //!< QSFP+ RX line 0 power sensor
1354  NT_SENSOR_NT80E3_RX2, //!< QSFP+ RX line 1 power sensor
1355  NT_SENSOR_NT80E3_RX3, //!< QSFP+ RX line 2 power sensor
1356  NT_SENSOR_NT80E3_RX4, //!< QSFP+ RX line 3 power sensor
1357  NT_SENSOR_NT80E3_TX1, //!< QSFP+ TX line 0 power sensor
1358  NT_SENSOR_NT80E3_TX2, //!< QSFP+ TX line 1 power sensor
1359  NT_SENSOR_NT80E3_TX3, //!< QSFP+ TX line 2 power sensor
1360  NT_SENSOR_NT80E3_TX4, //!< QSFP+ TX line 3 power sensor
1361  NT_SENSOR_NT80E3_PORT_MAX, //!< Number of NT80E3 port sensors
1362 };
1363 
1364 // The NT100E3 adapter sensor id's must match the corresponding id's for NT80E3
1366  // Public sensors (Level 0)
1370  NT_SENSOR_NT100E3_MCU_TEMP = NT_SENSOR_NT80E3_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1371  NT_SENSOR_NT100E3_PSU0_TEMP = NT_SENSOR_NT80E3_PSU0_TEMP, //!< Power supply 0 temperature sensor
1372  NT_SENSOR_NT100E3_PSU1_TEMP = NT_SENSOR_NT80E3_PSU1_TEMP, //!< Power supply 1 temperature sensor
1373  NT_SENSOR_NT100E3_PSU2_0_TEMP = NT_SENSOR_NT80E3_PSU2_0_TEMP, //!< Power supply 2, IC0 junction temperature sensor
1374  NT_SENSOR_NT100E3_PSU2_1_TEMP = NT_SENSOR_NT80E3_PSU2_1_TEMP, //!< Power supply 2, IC1 junction temperature sensor
1375  NT_SENSOR_NT100E3_OSC_TEMP = NT_SENSOR_NT80E3_OSC_TEMP, //!< Clock oscillator temperature sensor
1376  NT_SENSOR_NT100E3_EXT_TEMP = NT_SENSOR_NT80E3_EXT_TEMP, //!< External temperature sensor located at board corner outside enclosure
1378 
1379  // Diagnostic sensors (Level 1)
1380  NT_SENSOR_NT100E3_NT100E3_POWER = NT_SENSOR_NT80E3_NT80E3_POWER, //!< Total power consumption (calculated value) - does not generate alarms
1381  NT_SENSOR_NT100E3_FPGA_POWER = NT_SENSOR_NT80E3_FPGA_POWER, //!< FPGA power consumption (calculated value) - does not generate alarms
1382  NT_SENSOR_NT100E3_DDR3_POWER = NT_SENSOR_NT80E3_DDR3_POWER, //!< DDR3 RAM power consumption (calculated value) - does not generate alarms
1383  NT_SENSOR_NT100E3_NIM_POWER = NT_SENSOR_NT80E3_NIM_POWER, //!< NIM power consumption (calculated value) - does not generate alarms
1384  NT_SENSOR_NT100E3_PCI_BRIDGE_POWER = NT_SENSOR_NT80E3_PCI_BRIDGE_POWER, //!< PCI bridge power consumption (calculated value) - does not generate alarms
1385 
1386  NT_SENSOR_NT100E3_L1_MAX, //!< Number of NT100E3 level 0,1 board sensors
1388 
1389 //The NIM temperature sensor must be the one with the lowest sensorIndex
1390 //(enum value) in order to be shown by the monitoring tool in port mode
1392  // Public sensors
1393  NT_SENSOR_NT100E3_NIM, //!< CFP4 temperature sensor
1394  NT_SENSOR_NT100E3_GEARBOX_TEMP, //!< Gearbox temperature sensor
1395 
1396  // Diagnostic sensors (Level 1)
1397  NT_SENSOR_NT100E3_SUPPLY, //!< CFP4 supply voltage sensor - does not generate alarms
1398  NT_SENSOR_NT100E3_TX_BIAS1, //!< CFP4 TX lane 0 bias current sensor
1399  NT_SENSOR_NT100E3_TX_BIAS2, //!< CFP4 TX lane 1 bias current sensor
1400  NT_SENSOR_NT100E3_TX_BIAS3, //!< CFP4 TX lane 2 bias current sensor
1401  NT_SENSOR_NT100E3_TX_BIAS4, //!< CFP4 TX lane 3 bias current sensor
1402  NT_SENSOR_NT100E3_TX1, //!< CFP4 TX lane 0 power sensor
1403  NT_SENSOR_NT100E3_TX2, //!< CFP4 TX lane 1 power sensor
1404  NT_SENSOR_NT100E3_TX3, //!< CFP4 TX lane 2 power sensor
1405  NT_SENSOR_NT100E3_TX4, //!< CFP4 TX lane 3 power sensor
1406  NT_SENSOR_NT100E3_RX1, //!< CFP4 RX lane 0 power sensor
1407  NT_SENSOR_NT100E3_RX2, //!< CFP4 RX lane 1 power sensor
1408  NT_SENSOR_NT100E3_RX3, //!< CFP4 RX lane 2 power sensor
1409  NT_SENSOR_NT100E3_RX4, //!< CFP4 RX lane 3 power sensor
1410 
1411  NT_SENSOR_NT100E3_PORT_MAX, //!< Number of NT100E3 port sensors
1412 };
1413 
1414 // The NT200E3 adapter sensor id's
1416  // Public sensors (Level 0)
1417  NT_SENSOR_NT200E3_FPGA_TEMP, //!< FPGA temperature sensor
1418  NT_SENSOR_NT200E3_FAN_SPEED, //!< FAN speed sensor
1419  NT_SENSOR_NT200E3_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1420  NT_SENSOR_NT200E3_PSU0_TEMP, //!< Power supply 0 temperature sensor
1421  NT_SENSOR_NT200E3_PSU1_TEMP, //!< Power supply 1 temperature sensor
1422  NT_SENSOR_NT200E3_PCB_TEMP, //!< PCB temperature sensor
1423 
1424  // Diagnostic sensors (Level 1)
1425  NT_SENSOR_NT200E3_NT200E3_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1426  NT_SENSOR_NT200E3_FPGA_POWER , //!< FPGA power consumption (calculated value) - does not generate alarms
1427  NT_SENSOR_NT200E3_DDR4_POWER , //!< DDR4 RAM power consumption (calculated value) - does not generate alarms
1428  NT_SENSOR_NT200E3_NIM_POWER , //!< NIM power consumption (calculated value) - does not generate alarms
1429 
1430  NT_SENSOR_NT200E3_L1_MAX, //!< Number of NT200E3 level 0,1 board sensors
1432 
1433 //!< The following sensors are deprecated - generic types should be used instead
1434 //The NIM temperature sensor must be the one with the lowest sensorIndex
1435 //(enum value) in order to be shown by the monitoring tool in port mode
1437  // Public sensors
1438  NT_SENSOR_NT200E3_NIM, //!< QSFP28 temperature sensor
1439 
1440  // Diagnostic sensors (Level 1)
1441  NT_SENSOR_NT200E3_SUPPLY, //!< QSFP28 supply voltage sensor
1442  NT_SENSOR_NT200E3_TX_BIAS1, //!< QSFP28 TX bias line 0 current sensor
1443  NT_SENSOR_NT200E3_TX_BIAS2, //!< QSFP28 TX bias line 1 current sensor
1444  NT_SENSOR_NT200E3_TX_BIAS3, //!< QSFP28 TX bias line 2 current sensor
1445  NT_SENSOR_NT200E3_TX_BIAS4, //!< QSFP28 TX bias line 3 current sensor
1446  NT_SENSOR_NT200E3_RX1, //!< QSFP28 RX line 0 power sensor
1447  NT_SENSOR_NT200E3_RX2, //!< QSFP28 RX line 1 power sensor
1448  NT_SENSOR_NT200E3_RX3, //!< QSFP28 RX line 2 power sensor
1449  NT_SENSOR_NT200E3_RX4, //!< QSFP28 RX line 3 power sensor
1450  NT_SENSOR_NT200E3_TX1, //!< QSFP28 TX line 0 power sensor
1451  NT_SENSOR_NT200E3_TX2, //!< QSFP28 TX line 1 power sensor
1452  NT_SENSOR_NT200E3_TX3, //!< QSFP28 TX line 2 power sensor
1453  NT_SENSOR_NT200E3_TX4, //!< QSFP28 TX line 3 power sensor
1454  NT_SENSOR_NT200E3_PORT_MAX, //!< Number of NT200E3 port sensors
1455 };
1456 
1457 // The NT200A01 adapter sensor id's
1459  // Public sensors (Level 0)
1460  NT_SENSOR_NT200A01_FPGA_TEMP, //!< FPGA temperature sensor
1461  NT_SENSOR_NT200A01_FAN_SPEED, //!< FAN speed sensor
1462  NT_SENSOR_NT200A01_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1463  NT_SENSOR_NT200A01_PSU0_TEMP, //!< Power supply 0 temperature sensor
1464  NT_SENSOR_NT200A01_PCB_TEMP, //!< PCB temperature sensor
1465 
1466  // Diagnostic sensors (Level 1)
1467  NT_SENSOR_NT200A01_NT200A01_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1468  NT_SENSOR_NT200A01_FPGA_POWER , //!< FPGA power consumption (calculated value) - does not generate alarms
1469  NT_SENSOR_NT200A01_DDR4_POWER , //!< DDR4 RAM power consumption (calculated value) - does not generate alarms
1470  NT_SENSOR_NT200A01_NIM_POWER , //!< NIM power consumption (calculated value) - does not generate alarms
1471 
1472  NT_SENSOR_NT200A01_L1_MAX, //!< Number of NT200A01 level 0,1 board sensors
1474 
1475 //!< The following sensors are deprecated - generic types should be used instead
1476 //The NIM temperature sensor must be the one with the lowest sensorIndex
1477 //(enum value) in order to be shown by the monitoring tool in port mode
1479  // Public sensors
1480  NT_SENSOR_NT200A01_NIM, //!< QSFP28 temperature sensor
1481 
1482  // Diagnostic sensors (Level 1)
1483  NT_SENSOR_NT200A01_SUPPLY, //!< QSFP28 supply voltage sensor
1484  NT_SENSOR_NT200A01_TX_BIAS1, //!< QSFP28 TX bias line 0 current sensor
1485  NT_SENSOR_NT200A01_TX_BIAS2, //!< QSFP28 TX bias line 1 current sensor
1486  NT_SENSOR_NT200A01_TX_BIAS3, //!< QSFP28 TX bias line 2 current sensor
1487  NT_SENSOR_NT200A01_TX_BIAS4, //!< QSFP28 TX bias line 3 current sensor
1488  NT_SENSOR_NT200A01_RX1, //!< QSFP28 RX line 0 power sensor
1489  NT_SENSOR_NT200A01_RX2, //!< QSFP28 RX line 1 power sensor
1490  NT_SENSOR_NT200A01_RX3, //!< QSFP28 RX line 2 power sensor
1491  NT_SENSOR_NT200A01_RX4, //!< QSFP28 RX line 3 power sensor
1492  NT_SENSOR_NT200A01_TX1, //!< QSFP28 TX line 0 power sensor
1493  NT_SENSOR_NT200A01_TX2, //!< QSFP28 TX line 1 power sensor
1494  NT_SENSOR_NT200A01_TX3, //!< QSFP28 TX line 2 power sensor
1495  NT_SENSOR_NT200A01_TX4, //!< QSFP28 TX line 3 power sensor
1496  NT_SENSOR_NT200A01_PORT_MAX, //!< Number of NT200A01 port sensors
1497 };
1498 
1499 //!< The following sensors are deprecated - generic types should be used instead
1501  // Public sensors
1502  NT_SENSOR_NT200A01_2X25G_NIM, //!< SFP28 temperature sensor
1503 
1504  // Diagnostic sensors (Level 1)
1505  NT_SENSOR_NT200A01_2X25G_SUPPLY, //!< SFP28 supply voltage sensor
1506  NT_SENSOR_NT200A01_2X25G_TX_BIAS, //!< SFP28 TX bias line 0 current sensor
1507  NT_SENSOR_NT200A01_2X25G_RX, //!< SFP28 RX line 0 power sensor
1508  NT_SENSOR_NT200A01_2X25G_TX, //!< SFP28 TX line 0 power sensor
1509  NT_SENSOR_NT200A01_2X25G_PORT_MAX, //!< Number of NT200A01_2X25G port sensors
1510 };
1511 
1512 
1513 
1514 // The NT200A02 adapter sensor id's
1516  // Public sensors (Level 0)
1517  NT_SENSOR_NT200A02_FPGA_TEMP, //!< FPGA temperature sensor
1518  NT_SENSOR_NT200A02_FAN_SPEED, //!< FAN speed sensor
1519  NT_SENSOR_NT200A02_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1520  NT_SENSOR_NT200A02_PSU0_TEMP, //!< Power supply 0 temperature sensor
1521  NT_SENSOR_NT200A02_PSU1_TEMP, //!< Power supply 1 temperature sensor
1522  NT_SENSOR_NT200A02_PCB_TEMP, //!< PCB temperature sensor
1523 
1524  // Diagnostic sensors (Level 1)
1525  NT_SENSOR_NT200A02_NT200A02_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1526  NT_SENSOR_NT200A02_FPGA_POWER , //!< FPGA power consumption (calculated value) - does not generate alarms
1527  NT_SENSOR_NT200A02_DDR4_POWER , //!< DDR4 RAM power consumption (calculated value) - does not generate alarms
1528  NT_SENSOR_NT200A02_NIM_POWER , //!< NIM power consumption (calculated value) - does not generate alarms
1529 
1530  NT_SENSOR_NT200A02_L1_MAX, //!< Number of NT200A01 level 0,1 board sensors
1532 
1533 //!< The following sensors are deprecated - generic types should be used instead
1534 //The NIM temperature sensor must be the one with the lowest sensorIndex
1535 //(enum value) in order to be shown by the monitoring tool in port mode
1537  // Public sensors
1538  NT_SENSOR_NT200A02_NIM, //!< QSFP28 temperature sensor
1539 
1540  // Diagnostic sensors (Level 1)
1541  NT_SENSOR_NT200A02_SUPPLY, //!< QSFP28 supply voltage sensor
1542  NT_SENSOR_NT200A02_TX_BIAS1, //!< QSFP28 TX bias line 0 current sensor
1543  NT_SENSOR_NT200A02_TX_BIAS2, //!< QSFP28 TX bias line 1 current sensor
1544  NT_SENSOR_NT200A02_TX_BIAS3, //!< QSFP28 TX bias line 2 current sensor
1545  NT_SENSOR_NT200A02_TX_BIAS4, //!< QSFP28 TX bias line 3 current sensor
1546  NT_SENSOR_NT200A02_RX1, //!< QSFP28 RX line 0 power sensor
1547  NT_SENSOR_NT200A02_RX2, //!< QSFP28 RX line 1 power sensor
1548  NT_SENSOR_NT200A02_RX3, //!< QSFP28 RX line 2 power sensor
1549  NT_SENSOR_NT200A02_RX4, //!< QSFP28 RX line 3 power sensor
1550  NT_SENSOR_NT200A02_TX1, //!< QSFP28 TX line 0 power sensor
1551  NT_SENSOR_NT200A02_TX2, //!< QSFP28 TX line 1 power sensor
1552  NT_SENSOR_NT200A02_TX3, //!< QSFP28 TX line 2 power sensor
1553  NT_SENSOR_NT200A02_TX4, //!< QSFP28 TX line 3 power sensor
1554  NT_SENSOR_NT200A02_PORT_MAX, //!< Number of NT200A02 port sensors
1555 };
1556 
1557 // The NT40E3_AFU adapter sensor id's
1559  // Public sensors (Level 0)
1560  NT_SENSOR_NT40E3_AFU_FPGA_TEMP, //!< FPGA temperature sensor
1561 
1562  // Diagnostic sensors (Level 1)
1563  NT_SENSOR_NT40E3_AFU_POWER , //!< Total power consumption (calculated value) - does not generate alarms
1564 
1565  NT_SENSOR_NT40E3_AFU_L1_MAX, //!< Number of NT200E3 level 0,1 board sensors
1567 
1568 // The NT400D<11 adapter sensor id's
1570  // Public sensors (Level 0)
1571  //NT_SENSOR_NT400D11_FPGA_TEMP, //!< FPGA temperature sensor
1572  NT_SENSOR_NT400D11_TEMP2_TEMP_CORE_FABRIC, //!< FPGA temperature sensor 2 = NT_SENSOR_NT400D11_FPGA_TEMP
1573  NT_SENSOR_NT400D11_FAN_SPEED, //!< FAN speed sensor
1574  NT_SENSOR_NT400D11_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1575  NT_SENSOR_NT400D11_PSU1_TEMP, //!< Power supply 1 temperature sensor
1576  NT_SENSOR_NT400D11_PSU2_TEMP, //!< Power supply 2 temperature sensor
1577  NT_SENSOR_NT400D11_PSU3_TEMP, //!< Power supply 3 temperature sensor
1578  NT_SENSOR_NT400D11_PSU5_TEMP, //!< Power supply 5 temperature sensor
1579  NT_SENSOR_NT400D11_L1_MAX, //!< Number of NT400D11 level 0,1 board sensors
1581 
1582 // The NT400D<13 adapter sensor id's
1584  // Public sensors (Level 0)
1585  NT_SENSOR_NT400D13_TEMP2_TEMP_CORE_FABRIC = NT_SENSOR_NT400D11_TEMP2_TEMP_CORE_FABRIC, //!< FPGA temperature sensor 2 = NT_SENSOR_NT400D11_FPGA_TEMP
1587  NT_SENSOR_NT400D13_MCU_TEMP = NT_SENSOR_NT400D11_MCU_TEMP, //!< MCU (Micro Controller Unit) temperature sensor located inside enclosure below FAN
1588  NT_SENSOR_NT400D13_PSU1_TEMP = NT_SENSOR_NT400D11_PSU1_TEMP, //!< Power supply 1 temperature sensor
1589  NT_SENSOR_NT400D13_PSU2_TEMP = NT_SENSOR_NT400D11_PSU2_TEMP, //!< Power supply 2 temperature sensor
1590  NT_SENSOR_NT400D13_PSU3_TEMP = NT_SENSOR_NT400D11_PSU3_TEMP, //!< Power supply 3 temperature sensor
1591  NT_SENSOR_NT400D13_PSU5_TEMP = NT_SENSOR_NT400D11_PSU5_TEMP, //!< Power supply 5 temperature sensor
1592  NT_SENSOR_NT400D13_L1_MAX = NT_SENSOR_NT400D11_L1_MAX, //!< Number of NT400D13 level 0,1 board sensors
1594 
1595 typedef enum NtPTPProfile_e {
1596  NT_PTP_PROFILE_DEFAULT = 0, //!< PTP Default E2E Profile according to IEEE1588-2008
1597  NT_PTP_PROFILE_TELECOM, //!< PTP Telecom Profile (ITU G.8265.1)
1598  NT_PTP_PROFILE_POWER, //!< PTP Power Profile (IEEE C37.238)
1599  NT_PTP_PROFILE_ENTERPRISE, //!< PTP Enterprise Profile
1600  NT_PTP_PROFILE_G8275_1, //!< PTP (ITU G.8275.1)
1601  NT_PTP_PROFILE_SMPTE, //!< PTP SMPTE
1603 } NtPTPProfile_t;
1604 
1605 /**
1606  * Host loopback position.\n
1607  * The available loopback positions are adapter dependent and undocumented but
1608  * for each adapter a default host loopback position has been defined.
1609  * Therefore only the following values should be used.
1610  */
1611 typedef enum NtHostLoopback_e {
1612  NT_HOST_LOOPBACK_NONE = 0, //!< No host loopback
1613  NT_HOST_LOOPBACK_DEFAULT = INT_MAX, //!< Default host loopback.
1615 
1616 /**
1617  * Line loopback position.\n
1618  * The available loopback positions are adapter dependent and undocumented but
1619  * for each adapter a default line loopback position has been defined.
1620  * Therefore only the following values should be used.
1621  */
1622 typedef enum NtLineLoopback_e {
1623  NT_LINE_LOOPBACK_NONE = 0, //!< No line loopback
1624  NT_LINE_LOOPBACK_DEFAULT = INT_MAX, //!< Default line loopback.
1626 
1627 /**
1628  * Stream-id state.
1629  * When a stream-id is in the active state traffic is forwarded to the stream-id by the adapter
1630  * When a stream-id is in the inactive state traffic is discarded by the adapter
1631  */
1633  NT_STREAM_ID_STATE_UNKNOWN, //!< Unknown stream-id state
1634  NT_STREAM_ID_STATE_ACTIVE, //!< Traffic is forwarded to the stream-id
1635  NT_STREAM_ID_STATE_INACTIVE, //!< Traffic is dropped
1636 };
1637 
1638 /**
1639  * Feature level.
1640  * The feature level supported by the adapter/FPGA
1641  */
1643  NT_FEATURE_LEVEL_UNKNOWN = 0x0000, //!< Unknown feature level
1644  NT_FEATURE_LEVEL_S_CAP2 = 0x1002, //!< Capture level 2 for standard adapter
1645  NT_FEATURE_LEVEL_N_CAP12 = 0x000C, //!< Capture level 12
1646  NT_FEATURE_LEVEL_N_CAP12A = 0x200C, //!< Capture level 12A
1647  NT_FEATURE_LEVEL_N_CAP13 = 0x000D, //!< Capture level 13
1648  NT_FEATURE_LEVEL_N_CAP14 = 0x000E, //!< Capture level 14
1649  NT_FEATURE_LEVEL_N_CAP15 = 0x000F, //!< Capture level 15
1650  NT_FEATURE_LEVEL_N_CAP16 = 0x0010, //!< Capture level 16
1651  NT_FEATURE_LEVEL_S_INL2 = 0x9002, //!< In-line level 2 for standard adapter
1652  NT_FEATURE_LEVEL_N_INL4 = 0x8004, //!< In-line level 4
1653  NT_FEATURE_LEVEL_N_INL4A = 0xA004, //!< In-line level 4A
1654  NT_FEATURE_LEVEL_N_INL5 = 0x8005, //!< In-line level 5
1655  NT_FEATURE_LEVEL_N_INL6 = 0x8006, //!< In-line level 6
1656  NT_FEATURE_LEVEL_N_INL7 = 0x8007, //!< In-line level 7
1657  NT_FEATURE_LEVEL_N_INL8 = 0x8008, //!< In-line level 8
1658  NT_FEATURE_LEVEL_N_ANL1 = 0x4001, //!< Analyser level 1
1659  NT_FEATURE_LEVEL_N_ANL2 = 0x4002, //!< Analyser level 2
1660  NT_FEATURE_LEVEL_N_ANL3 = 0x4003, //!< Analyser level 3
1661  NT_FEATURE_LEVEL_N_ANL3A = 0xA003, //!< Analyser level 3A
1662  NT_FEATURE_LEVEL_N_ANL4 = 0x4004, //!< Analyser level 4
1663  NT_FEATURE_LEVEL_N_ANL5 = 0x4005, //!< Analyser level 5
1664  NT_FEATURE_LEVEL_N_ANL6 = 0x4006, //!< Analyser level 6
1665  NT_FEATURE_LEVEL_N_ANL7 = 0x4007, //!< Analyser level 7
1666  NT_FEATURE_LEVEL_N_ANL8 = 0x4008, //!< Analyser level 8
1667  NT_FEATURE_LEVEL_N_ANL9 = 0x4009, //!< Analyser level 9
1668  NT_FEATURE_LEVEL_N_ANL10 = 0x400A, //!< Analyser level 10
1669  NT_FEATURE_LEVEL_N_ANL11 = 0x400B, //!< Analyser level 11
1670  NT_FEATURE_LEVEL_N_ANL12 = 0x400C, //!< Analyser level 12
1671  NT_FEATURE_LEVEL_N_ANL13 = 0x400D, //!< Analyser level 13
1672 };
1673 
1674 
1675 #endif //__COMMONTYPES_H__