kvmlib.h
Go to the documentation of this file.
1 /*
2 * Copyright 2017 by Kvaser AB, Molndal, Sweden
3 * http://www.kvaser.com
4 *
5 * This software is dual licensed under the following two licenses:
6 * BSD-new and GPLv2. You may use either one. See the included
7 * COPYING file for details.
8 *
9 * License: BSD-new
10 * ==============================================================================
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions are met:
13 * * Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * * Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * * Neither the name of the <organization> nor the
19 * names of its contributors may be used to endorse or promote products
20 * derived from this software without specific prior written permission.
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
29 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
30 * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 * POSSIBILITY OF SUCH DAMAGE.
33 *
34 *
35 * License: GPLv2
36 * ==============================================================================
37 * This program is free software; you can redistribute it and/or modify
38 * it under the terms of the GNU General Public License as published by
39 * the Free Software Foundation; either version 2 of the License, or
40 * (at your option) any later version.
41 *
42 * This program is distributed in the hope that it will be useful,
43 * but WITHOUT ANY WARRANTY; without even the implied warranty of
44 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
45 * GNU General Public License for more details.
46 *
47 * You should have received a copy of the GNU General Public License
48 * along with this program; if not, write to the Free Software
49 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
50 *
51 *
52 * IMPORTANT NOTICE:
53 * ==============================================================================
54 * This source code is made available for free, as an open license, by Kvaser AB,
55 * for use with its applications. Kvaser AB does not accept any liability
56 * whatsoever for any third party patent or other immaterial property rights
57 * violations that may result from any usage of this source code, regardless of
58 * the combination of source code and various applications that it can be used
59 * in, or with.
60 *
61 * -----------------------------------------------------------------------------
62 */
63
64 #ifndef KVMLIB_H
65 #define KVMLIB_H
66
101 #define WINAPI
102 #define INVALID_HANDLE_VALUE NULL
103 typedef void* HANDLE;
104 #include <stdint.h>
105 #include <stdio.h>
106
107 typedef int8_t int8;
108 typedef uint8_t uint8;
109 typedef int16_t int16;
110 typedef uint16_t uint16;
111 typedef int32_t int32;
112 typedef uint32_t uint32;
113 typedef int64_t int64;
114
115
116 #ifdef __cplusplus
117 extern "C" {
118 #endif
119
128 #define kvmDEVICE_MHYDRA 0
129 #define kvmDEVICE_MHYDRA_EXT 1
130
140 #define kvmLDF_MAJOR_CAN 3
141 #define kvmLDF_MAJOR_CAN64 5
142
147 typedef HANDLE kmeFileHandle;
148
157 #define kvmFS_FAT16 0
158 #define kvmFS_FAT32 1
159
169 #define kvmFILE_KME24 0
170 #define kvmFILE_KME25 1
171 #define kvmFILE_KME40 2
172 #define kvmFILE_KME50 3
173
178 typedef HANDLE kvmHandle;
179
180
191 // If you change here, remember to also change kvmlib.cpp and kvmlibtest...
192 typedef enum {
193 kvmOK = 0,
194 kvmFail = -1,
195 kvmERR_PARAM = -3,
196 kvmERR_LOGFILEOPEN = -8,
197 kvmERR_NOSTARTTIME = -9,
198 kvmERR_NOLOGMSG = -10,
199 kvmERR_LOGFILEWRITE = -11,
200 kvmEOF = -12,
201 kvmERR_NO_DISK = -13,
202 kvmERR_LOGFILEREAD = -14,
203 kvmERR_QUEUE_FULL = -20,
204 kvmERR_CRC_ERROR = -21,
205 kvmERR_SECTOR_ERASED = -22,
206 kvmERR_FILE_ERROR = -23,
207 kvmERR_DISK_ERROR = -24,
208 kvmERR_DISKFULL_DIR = -25,
209 kvmERR_DISKFULL_DATA = -26,
210 kvmERR_SEQ_ERROR = -27,
211 kvmERR_FILE_SYSTEM_CORRUPT = -28,
212 kvmERR_UNSUPPORTED_VERSION = -29,
213 kvmERR_NOT_IMPLEMENTED = -30,
214 kvmERR_FATAL_ERROR = -31,
215 kvmERR_ILLEGAL_REQUEST = -32,
216 kvmERR_FILE_NOT_FOUND = -33,
217 kvmERR_NOT_FORMATTED = -34,
218 kvmERR_WRONG_DISK_TYPE = -35,
219 kvmERR_TIMEOUT = -36,
220 kvmERR_DEVICE_COMM_ERROR = -37,
221 kvmERR_OCCUPIED = -38,
222 kvmERR_USER_CANCEL = -39,
223 kvmERR_FIRMWARE = -40,
224 kvmERR_CONFIG_ERROR = -41,
225 kvmERR_WRITE_PROT = -42,
226
227 } kvmStatus;
240 #define kvm_SWINFO_KVMLIB 1
241 #define kvm_SWINFO_DRIVER 2
242 #define kvm_SWINFO_FIRMWARE 3
243 #define kvm_SWINFO_DRIVER_PRODUCT 4
244 #define kvm_SWINFO_CONFIG_VERSION_NEEDED 5
245 #define kvm_SWINFO_CPLD_VERSION 6
246
248 #include <pshpack1.h>
249
250 #ifndef canMSG_RTR
251
260 # define canMSG_RTR 0x0001
261 # define canMSG_STD 0x0002
262 # define canMSG_EXT 0x0004
263 # define canMSG_ERROR_FRAME 0x0020
264 # define canMSG_TXACK 0x0040
265 # define canMSG_TXRQ 0x0080
266 # define canMSGERR_OVERRUN 0x0600
267 # define canFDMSG_EDL 0x010000
268 # define canFDMSG_FDF 0x010000
269 # define canFDMSG_BRS 0x020000
270 # define canFDMSG_ESI 0x040000
271
272 #endif
273
282 #define TRIGVAR_TYPE_MSG_ID 0
283 #define TRIGVAR_TYPE_MSG_DLC 1
284 #define TRIGVAR_TYPE_MSG_FLAG 2
285 #define TRIGVAR_TYPE_SIGVAL 3
286 #define TRIGVAR_TYPE_EXTERNAL 4
287 #define TRIGVAR_TYPE_TIMER 5
288 #define TRIGVAR_TYPE_DISK_FULL 6
289 #define TRIGVAR_TYPE_STARTUP 9
290
295 typedef struct {
296 uint32 id;
297 int64 timeStamp;
298 uint32 channel;
299 uint32 dlc;
300 uint32 flags;
301 uint8 data[64];
302 } kvmLogMsgEx;
303
307 typedef struct {
308 uint32 calendarTime;
309 int64 timeStamp;
310 } kvmLogRtcClockEx;
311
312
316 typedef struct {
317 int32 type;
318 int32 preTrigger;
319 int32 postTrigger;
320 uint32 trigMask;
321 int64 timeStamp;
322 } kvmLogTriggerEx;
323
327 typedef struct
328 {
329 uint32 lioMajor; // Lio major version
330 uint32 lioMinor; // Lio minor version
331 uint32 fwMajor; // Firmware major version
332 uint32 fwMinor; // Firmware major version
333 uint32 fwBuild; // Firmware build version
334 uint32 serialNumber; // Serial number
335 uint32 eanHi; // EAN high bytes
336 uint32 eanLo; // EAN low bytes
337 } kvmLogVersionEx;
338
339
347 #define kvmLOG_TYPE_INVALID 0
348 #define kvmLOG_TYPE_CLOCK 1
349 #define kvmLOG_TYPE_MSG 2
350 #define kvmLOG_TYPE_TRIGGER 3
351 #define kvmLOG_TYPE_VERSION 4
352
357 typedef struct {
358 uint32 type;
359 union {
360 kvmLogMsgEx msg;
361 kvmLogRtcClockEx rtc;
362 kvmLogTriggerEx trig;
363 kvmLogVersionEx ver;
364 uint8 raw[128];
365 } eventUnion;
366 } kvmLogEventEx;
367
368 #include <poppack.h>
369
379 void WINAPI kvmInitialize(void);
380
393 kvmStatus WINAPI kvmGetVersion(int *major, int *minor, int *build);
394
407 kvmStatus WINAPI kvmGetErrorText(kvmStatus error, char *buf, size_t len);
408
425 kvmStatus WINAPI kvmClose(kvmHandle h);
426
446 kvmHandle WINAPI kvmDeviceOpen(int32 cardNr,
447 kvmStatus *status,
448 int32 deviceType);
449
468 kvmStatus WINAPI kvmDeviceMountKmf(kvmHandle h);
469
491 kvmStatus WINAPI kvmDeviceMountKmfEx(kvmHandle h, int *ldfMajor, int *ldfMinor);
492
517 kvmHandle WINAPI kvmKmfOpen(const char *filename,
518 kvmStatus *status,
519 int32 deviceType);
520
548 kvmHandle WINAPI kvmKmfOpenEx(const char *filename,
549 kvmStatus *status,
550 int32 deviceType,
551 int *ldfMajor,
552 int *ldfMinor);
553
567 kvmStatus WINAPI kvmKmfValidate(kvmHandle h);
568
592 kvmStatus WINAPI kvmDeviceFormatDisk(kvmHandle h,
593 int fileSystem,
594 uint32 reserveSpace,
595 uint32 dbaseSpace);
596
611 kvmStatus WINAPI kvmLogFileGetCount(kvmHandle h, uint32 *fileCount);
612
631 kvmStatus WINAPI kvmLogFileMount(kvmHandle h, uint32 fileIndx,
632 uint32 *eventCount);
633
644 kvmStatus WINAPI kvmLogFileDismount(kvmHandle h);
645
661 kvmStatus WINAPI kvmLogFileGetStartTime (kvmHandle h,
662 uint32 *startTime);
663
679 kvmStatus WINAPI kvmLogFileGetEndTime (kvmHandle h,
680 uint32 *endTime);
681
697 kvmStatus WINAPI kvmLogFileGetCreatorSerial(kvmHandle h,
698 uint32 *serialNumber);
699
716 kvmStatus WINAPI kvmLogFileReadEvent(kvmHandle h, kvmLogEventEx *e);
717
718
732 kvmStatus WINAPI kvmLogFileDeleteAll(kvmHandle h);
733
750 kvmStatus WINAPI kvmDeviceDiskStatus(kvmHandle h, int *present);
751
768 kvmStatus WINAPI kvmKmfGetUsage(kvmHandle h,
769 uint32 *totalSectorCount,
770 uint32 *usedSectorCount);
771
787 kvmStatus WINAPI kvmDeviceDiskSize(kvmHandle h, uint32 *diskSize);
788
803 kvmStatus WINAPI kvmDeviceGetSerialNumber(kvmHandle h, unsigned int *serial);
804
823 kvmStatus WINAPI kvmDeviceGetSoftwareInfo(kvmHandle h,
824 int32 itemCode,
825 unsigned int *major,
826 unsigned int *minor,
827 unsigned int *build,
828 unsigned int *flags);
842 kvmStatus WINAPI kvmDeviceFlashLeds(kvmHandle h);
843
844
861 kvmStatus WINAPI kvmDeviceGetRTC(kvmHandle h, uint32 *t);
862
879 kvmStatus WINAPI kvmDeviceSetRTC(kvmHandle h, uint32 t);
880
897 kvmStatus WINAPI kvmKmfReadConfig(kvmHandle h, void *buf,
898 size_t buflen, size_t *actual_len);
899
915 kvmStatus WINAPI kvmKmfWriteConfig(kvmHandle h, void *buf, size_t buflen);
916
917
937 kvmStatus WINAPI kvmKmfGetDbaseFile(kvmHandle h, char *path, char *filenamebuf, size_t buflen);
938
956 kvmStatus WINAPI kvmKmfPutDbaseFile(kvmHandle h, char *filename);
957
971 kvmStatus WINAPI kvmKmfEraseDbaseFile(kvmHandle h);
972
991 kmeFileHandle WINAPI kvmKmeOpenFile (const char *filename,
992 kvmStatus *status,
993 int32 fileType);
994
1012 kvmStatus WINAPI kvmKmeScanFileType (const char *filename,
1013 int32 *fileType);
1014
1036 kmeFileHandle WINAPI kvmKmeCreateFile (const char *filename,
1037 kvmStatus *status,
1038 int32 fileType);
1039
1058 kvmStatus WINAPI kvmKmeReadEvent (kmeFileHandle h, kvmLogEventEx *e);
1059
1077 kvmStatus WINAPI kvmKmeWriteEvent (kmeFileHandle h, kvmLogEventEx *e);
1078
1096 kvmStatus WINAPI kvmKmeCountEvents(kmeFileHandle h, uint32 *eventCount);
1097
1115 kvmStatus WINAPI kvmKmeCloseFile (kmeFileHandle h);
1116
1147 #ifdef __cplusplus
1148 }
1149 #endif
1150
1151 #endif //KVMLIB_H
kvmKmeCountEvents
kvmStatus kvmKmeCountEvents(kmeFileHandle h, uint32 *eventCount)
kvmLogFileDeleteAll
kvmStatus kvmLogFileDeleteAll(kvmHandle h)
kvmHandle
HANDLE kvmHandle
A handle to a Memorator or equivalent KMF file.
Definition: kvmlib.h:178
kvmLogTriggerEx::postTrigger
int32 postTrigger
Posttrigger time in milliseconds.
Definition: kvmlib.h:319
kvmERR_NOLOGMSG
No log message found.
Definition: kvmlib.h:198
kvmDeviceDiskSize
kvmStatus kvmDeviceDiskSize(kvmHandle h, uint32 *diskSize)
kvmKmeCloseFile
kvmStatus kvmKmeCloseFile(kmeFileHandle h)
kvmLogFileGetStartTime
kvmStatus kvmLogFileGetStartTime(kvmHandle h, uint32 *startTime)
HANDLE
void * HANDLE
Definition: kvmlib.h:103
kvmLogVersionEx::fwBuild
uint32 fwBuild
Definition: kvmlib.h:333
kvmKmfGetUsage
kvmStatus kvmKmfGetUsage(kvmHandle h, uint32 *totalSectorCount, uint32 *usedSectorCount)
kvmLogRtcClockEx::calendarTime
uint32 calendarTime
RTC date, seconds since 1970-01-01T00:00:00+00:00 (UTC)
Definition: kvmlib.h:308
WINAPI
#define WINAPI
Definition: kvmlib.h:101
kvmDeviceFormatDisk
kvmStatus kvmDeviceFormatDisk(kvmHandle h, int fileSystem, uint32 reserveSpace, uint32 dbaseSpace)
kvmERR_TIMEOUT
Timeout.
Definition: kvmlib.h:219
kvmLogEventEx::msg
kvmLogMsgEx msg
A CAN message.
Definition: kvmlib.h:360
kvmDeviceGetSoftwareInfo
kvmStatus kvmDeviceGetSoftwareInfo(kvmHandle h, int32 itemCode, unsigned int *major, unsigned int *minor, unsigned int *build, unsigned int *flags)
kvmStatus
kvmStatus
Definition: kvmlib.h:192
kvmERR_CONFIG_ERROR
Configuration error.
Definition: kvmlib.h:224
kvmERR_SEQ_ERROR
Unexpected sequence.
Definition: kvmlib.h:210
kvmKmeScanFileType
kvmStatus kvmKmeScanFileType(const char *filename, int32 *fileType)
kvmDeviceOpen
kvmHandle kvmDeviceOpen(int32 cardNr, kvmStatus *status, int32 deviceType)
kvmERR_WRONG_DISK_TYPE
Wrong disk type.
Definition: kvmlib.h:218
kvmKmfOpen
kvmHandle kvmKmfOpen(const char *filename, kvmStatus *status, int32 deviceType)
kvmLogEventEx::ver
kvmLogVersionEx ver
A version message.
Definition: kvmlib.h:363
kvmOK
OK!
Definition: kvmlib.h:193
kvmLogRtcClockEx
A RTC clock message.
Definition: kvmlib.h:307
kvmGetVersion
kvmStatus kvmGetVersion(int *major, int *minor, int *build)
kvmLogMsgEx::dlc
uint32 dlc
The length of the message.
Definition: kvmlib.h:299
kvmLogMsgEx::timeStamp
int64 timeStamp
The timestamp in units of 1 nanosecond.
Definition: kvmlib.h:297
kvmERR_SECTOR_ERASED
Sector unexpectadly erased.
Definition: kvmlib.h:205
kvmERR_NOT_FORMATTED
Disk not formatted.
Definition: kvmlib.h:217
kvmKmfReadConfig
kvmStatus kvmKmfReadConfig(kvmHandle h, void *buf, size_t buflen, size_t *actual_len)
kvmLogMsgEx
A CAN message.
Definition: kvmlib.h:295
kvmERR_PARAM
Error in supplied parameters.
Definition: kvmlib.h:195
kvmDeviceMountKmf
kvmStatus kvmDeviceMountKmf(kvmHandle h)
kvmLogEventEx
The union of events used by kvmKmeReadEvent().
Definition: kvmlib.h:357
kvmERR_CRC_ERROR
CRC check failed.
Definition: kvmlib.h:204
kvmInitialize
void kvmInitialize(void)
kvmDeviceDiskStatus
kvmStatus kvmDeviceDiskStatus(kvmHandle h, int *present)
kvmERR_DEVICE_COMM_ERROR
Device communication error.
Definition: kvmlib.h:220
kvmERR_DISK_ERROR
General disk error.
Definition: kvmlib.h:207
uint8
uint8_t uint8
Definition: kvmlib.h:108
kvmERR_FILE_ERROR
File I/O error.
Definition: kvmlib.h:206
kvmERR_DISKFULL_DATA
Disk full (data).
Definition: kvmlib.h:209
kvmDeviceGetSerialNumber
kvmStatus kvmDeviceGetSerialNumber(kvmHandle h, unsigned int *serial)
kvmLogFileGetCount
kvmStatus kvmLogFileGetCount(kvmHandle h, uint32 *fileCount)
kvmERR_FILE_NOT_FOUND
File not found.
Definition: kvmlib.h:216
kvmDeviceFlashLeds
kvmStatus kvmDeviceFlashLeds(kvmHandle h)
int8
int8_t int8
Definition: kvmlib.h:107
kvmLogFileGetEndTime
kvmStatus kvmLogFileGetEndTime(kvmHandle h, uint32 *endTime)
kvmLogVersionEx
A version message.
Definition: kvmlib.h:327
kvmLogVersionEx::eanHi
uint32 eanHi
Definition: kvmlib.h:335
kvmKmfEraseDbaseFile
kvmStatus kvmKmfEraseDbaseFile(kvmHandle h)
kvmClose
kvmStatus kvmClose(kvmHandle h)
kvmKmfPutDbaseFile
kvmStatus kvmKmfPutDbaseFile(kvmHandle h, char *filename)
kvmERR_FIRMWARE
Firmware error.
Definition: kvmlib.h:223
kvmERR_FATAL_ERROR
Fatal error.
Definition: kvmlib.h:214
kvmLogEventEx::type
uint32 type
kvmLOG_TYPE_xxx, Event types in log
Definition: kvmlib.h:358
kvmLogVersionEx::fwMinor
uint32 fwMinor
Definition: kvmlib.h:332
kmeFileHandle
HANDLE kmeFileHandle
A handle to a KME file.
Definition: kvmlib.h:147
kvmLogVersionEx::lioMinor
uint32 lioMinor
Definition: kvmlib.h:330
kvmERR_ILLEGAL_REQUEST
Illegal request.
Definition: kvmlib.h:215
uint16
uint16_t uint16
Definition: kvmlib.h:110
kvmERR_UNSUPPORTED_VERSION
Unsupported version.
Definition: kvmlib.h:212
kvmLogMsgEx::flags
uint32 flags
Message flags canMSG_xxx.
Definition: kvmlib.h:300
kvmDeviceGetRTC
kvmStatus kvmDeviceGetRTC(kvmHandle h, uint32 *t)
kvmLogVersionEx::serialNumber
uint32 serialNumber
Definition: kvmlib.h:334
kvmLogFileMount
kvmStatus kvmLogFileMount(kvmHandle h, uint32 fileIndx, uint32 *eventCount)
kvmKmfOpenEx
kvmHandle kvmKmfOpenEx(const char *filename, kvmStatus *status, int32 deviceType, int *ldfMajor, int *ldfMinor)
kvmLogTriggerEx::timeStamp
int64 timeStamp
The timestamp in units of 1 nanosecond.
Definition: kvmlib.h:321
kvmERR_NO_DISK
No disk found.
Definition: kvmlib.h:201
kvmERR_NOSTARTTIME
Start time not found.
Definition: kvmlib.h:197
uint32
uint32_t uint32
Definition: kvmlib.h:112
int16
int16_t int16
Definition: kvmlib.h:109
kvmLogVersionEx::lioMajor
uint32 lioMajor
Definition: kvmlib.h:329
int64
int64_t int64
Definition: kvmlib.h:113
kvmDeviceSetRTC
kvmStatus kvmDeviceSetRTC(kvmHandle h, uint32 t)
kvmEOF
End of file found.
Definition: kvmlib.h:200
kvmLogTriggerEx::type
int32 type
The type of trigger TRIGVAR_TYPE_xxx.
Definition: kvmlib.h:317
kvmLogTriggerEx
A trigger message.
Definition: kvmlib.h:316
kvmKmfGetDbaseFile
kvmStatus kvmKmfGetDbaseFile(kvmHandle h, char *path, char *filenamebuf, size_t buflen)
kvmERR_WRITE_PROT
Disk is write protected.
Definition: kvmlib.h:225
kvmERR_USER_CANCEL
User abort.
Definition: kvmlib.h:222
kvmKmfValidate
kvmStatus kvmKmfValidate(kvmHandle h)
kvmLogMsgEx::id
uint32 id
The message identifier.
Definition: kvmlib.h:296
kvmLogTriggerEx::trigMask
uint32 trigMask
Bitmask with all active triggers.
Definition: kvmlib.h:320
kvmLogVersionEx::fwMajor
uint32 fwMajor
Definition: kvmlib.h:331
int32
int32_t int32
Definition: kvmlib.h:111
kvmKmeOpenFile
kmeFileHandle kvmKmeOpenFile(const char *filename, kvmStatus *status, int32 fileType)
kvmERR_OCCUPIED
Device occupied.
Definition: kvmlib.h:221
kvmERR_LOGFILEREAD
Error while reading log file.
Definition: kvmlib.h:202
kvmDeviceMountKmfEx
kvmStatus kvmDeviceMountKmfEx(kvmHandle h, int *ldfMajor, int *ldfMinor)
kvmLogFileDismount
kvmStatus kvmLogFileDismount(kvmHandle h)
kvmLogEventEx::trig
kvmLogTriggerEx trig
A trigger message.
Definition: kvmlib.h:362
kvmERR_NOT_IMPLEMENTED
Not implemented.
Definition: kvmlib.h:213
kvmKmfWriteConfig
kvmStatus kvmKmfWriteConfig(kvmHandle h, void *buf, size_t buflen)
kvmERR_FILE_SYSTEM_CORRUPT
File system corrupt.
Definition: kvmlib.h:211
kvmLogFileReadEvent
kvmStatus kvmLogFileReadEvent(kvmHandle h, kvmLogEventEx *e)
kvmERR_QUEUE_FULL
Queue is full.
Definition: kvmlib.h:203
kvmERR_LOGFILEWRITE
Error writing log file.
Definition: kvmlib.h:199
kvmLogMsgEx::channel
uint32 channel
The device channel on which the message arrived, 0,1,...
Definition: kvmlib.h:298
kvmLogRtcClockEx::timeStamp
int64 timeStamp
The timestamp in units of 1 nanosecond.
Definition: kvmlib.h:309
kvmKmeReadEvent
kvmStatus kvmKmeReadEvent(kmeFileHandle h, kvmLogEventEx *e)
kvmFail
Generic error.
Definition: kvmlib.h:194
kvmLogTriggerEx::preTrigger
int32 preTrigger
Pretrigger time in milliseconds.
Definition: kvmlib.h:318
kvmLogFileGetCreatorSerial
kvmStatus kvmLogFileGetCreatorSerial(kvmHandle h, uint32 *serialNumber)
kvmKmeCreateFile
kmeFileHandle kvmKmeCreateFile(const char *filename, kvmStatus *status, int32 fileType)
kvmGetErrorText
kvmStatus kvmGetErrorText(kvmStatus error, char *buf, size_t len)
kvmKmeWriteEvent
kvmStatus kvmKmeWriteEvent(kmeFileHandle h, kvmLogEventEx *e)
kvmLogEventEx::rtc
kvmLogRtcClockEx rtc
An RTC message.
Definition: kvmlib.h:361
kvmERR_LOGFILEOPEN
Can&#39;t find/open log file.
Definition: kvmlib.h:196
kvmLogVersionEx::eanLo
uint32 eanLo
Definition: kvmlib.h:336
kvmERR_DISKFULL_DIR
Disk full (directory).
Definition: kvmlib.h:208