Kvaser CANLIB: Welcome to Kvaser CANLIB!
Data Structures | Macros | Functions
kvaDbLib.h File Reference

Go to the source code of this file.

Data Structures

struct  KvaDbProtocolProperties
 

Macros

#define WINAPI
 
Kvaser Database Message Flags

The following flags are never used.

#define KVADB_MESSAGE_EXT   0x80000000
 
#define KVADB_MESSAGE_J1939   0x00000001
 
#define KVADB_MESSAGE_WAKEUP   0x00000002
 
Kvaser Database Multiplexer Mode values

#define KVADB_MUX_SIGNAL   -2
 
#define KVADB_MUX_INDEPENDENT   -1
 

Enumerations

kvaDbErr_xxx

The following codes are returned by most CANDB API calls.

Note
Error codes are always negative.
enum  KvaDbStatus {
  kvaDbOK = 0,
  kvaDbErr_Fail = -1,
  kvaDbErr_NoDatabase = -2,
  kvaDbErr_Param = -3,
  kvaDbErr_NoMsg = -4,
  kvaDbErr_NoSignal = -5,
  kvaDbErr_Internal = -6,
  kvaDbErr_DbFileOpen = -7,
  kvaDbErr_DatabaseInternal = -8,
  kvaDbErr_NoNode = -9,
  kvaDbErr_NoAttrib = -10,
  kvaDbErr_OnlyOneAllowed = -11
}
 
CANDBSignalEncoding API Signal Encoding

The following values are used by kvaDbGetSignalEncoding() and kvaDbSetSignalEncoding()

enum  KvaDbSignalEncoding {
  kvaDb_Intel = 0,
  kvaDb_Motorola = 1
}
 
CANDBSignalRepresentation API Signal Representation
enum  KvaDbSignalType {
  kvaDb_Invalid,
  kvaDb_Signed,
  kvaDb_Unsigned,
  kvaDb_Float,
  kvaDb_Double
}
 
CANDBAttributeRepresentation API Attribute Representation
enum  KvaDbAttributeType {
  kvaDb_AttributeInvalid = 0,
  kvaDb_AttributeInteger = 1,
  kvaDb_AttributeFloat = 3,
  kvaDb_AttributeEnumeration = 4,
  kvaDb_AttributeString = 5
}
 
CANDBAttributeOwner API Attribute Owner
enum  KvaDbAttributeOwner {
  kvaDb_AttributeOwnerInvalid = 0,
  kvaDb_AttributeOwnerDb = 1,
  kvaDb_AttributeOwnerMessage = 2,
  kvaDb_AttributeOwnerNode = 3,
  kvaDb_AttributeOwnerSignal = 4,
  kvaDb_AttributeOwnerEnv = 5
}
 
CANDBProtocolType API Protocol Type
enum  KvaDbProtocolType {
  kvaDb_ProtocolCan = 0,
  kvaDb_ProtocolVan = 1,
  kvaDb_ProtocolLin = 2,
  kvaDb_ProtocolMOST = 3,
  kvaDb_ProtocolFlexRay = 4,
  kvaDb_ProtocolBEAN = 5,
  kvaDb_ProtocolEthernet = 6,
  kvaDb_ProtocolAFDX = 7,
  kvaDb_ProtocolJ1708 = 8,
  kvaDb_ProtocolCanFD = 9,
  kvaDb_ProtocolUnknown = 10
}
 

Functions

KvaDbStatus kvaDbOpen (KvaDbHnd *dh)
 
KvaDbStatus kvaDbAddFile (KvaDbHnd dh, const char *filename)
 
KvaDbStatus kvaDbSetDummyFileName (KvaDbHnd dh, const char *filename)
 
KvaDbStatus kvaDbCreate (KvaDbHnd dh, const char *localName, const char *filename)
 
KvaDbStatus kvaDbClose (KvaDbHnd dh)
 
KvaDbStatus kvaDbWriteFile (KvaDbHnd dh, char *filename)
 
KvaDbStatus kvaDbReadFile (KvaDbHnd dh, char *filename)
 
KvaDbStatus kvaDbGetFlags (KvaDbHnd dh, unsigned int *flags)
 
KvaDbStatus kvaDbGetProtocol (KvaDbHnd dh, KvaDbProtocolType *prot)
 
KvaDbStatus kvaDbGetProtocolProperties (KvaDbProtocolType prot, KvaDbProtocolProperties *prop)
 
KvaDbStatus kvaDbGetFirstMsg (KvaDbHnd dh, KvaDbMessageHnd *mh)
 
KvaDbStatus kvaDbGetNextMsg (KvaDbHnd dh, KvaDbMessageHnd *mh)
 
KvaDbStatus kvaDbGetMsgById (KvaDbHnd dh, unsigned int id, KvaDbMessageHnd *mh)
 
KvaDbStatus kvaDbGetMsgByName (KvaDbHnd dh, const char *msg_name, KvaDbMessageHnd *mh)
 
KvaDbStatus kvaDbGetMsgName (KvaDbMessageHnd mh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetMsgQualifiedName (KvaDbMessageHnd mh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetMsgComment (KvaDbMessageHnd mh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetMsgId (KvaDbMessageHnd mh, unsigned int *id, unsigned int *flags)
 
KvaDbStatus kvaDbGetMsgDlc (KvaDbMessageHnd mh, int *dlc)
 
KvaDbStatus kvaDbGetMsgSendNode (KvaDbMessageHnd mh, KvaDbNodeHnd *nh)
 
KvaDbStatus kvaDbAddMsg (KvaDbHnd dh, KvaDbMessageHnd *mh)
 
KvaDbStatus kvaDbDeleteMsg (KvaDbHnd dh, KvaDbMessageHnd mh)
 
KvaDbStatus kvaDbSetFlags (KvaDbHnd dh, unsigned int flags)
 
KvaDbStatus kvaDbSetProtocol (KvaDbHnd dh, KvaDbProtocolType prot)
 
KvaDbStatus kvaDbSetMsgName (KvaDbMessageHnd mh, char *buf)
 
KvaDbStatus kvaDbSetMsgComment (KvaDbMessageHnd mh, char *buf)
 
KvaDbStatus kvaDbSetMsgId (KvaDbMessageHnd mh, unsigned int id, unsigned int flags)
 
KvaDbStatus kvaDbSetMsgDlc (KvaDbMessageHnd mh, int dlc)
 
KvaDbStatus kvaDbSetMsgSendNode (KvaDbMessageHnd mh, KvaDbNodeHnd nh)
 
KvaDbStatus kvaDbGetMsgMux (KvaDbMessageHnd mh, KvaDbSignalHnd *shh)
 
KvaDbStatus kvaDbGetFirstSignal (KvaDbMessageHnd mh, KvaDbSignalHnd *sh)
 
KvaDbStatus kvaDbGetNextSignal (KvaDbMessageHnd mh, KvaDbSignalHnd *sh)
 
KvaDbStatus kvaDbGetSignalByName (KvaDbMessageHnd mh, char *buf, KvaDbSignalHnd *sh)
 
KvaDbStatus kvaDbSetSignalMode (KvaDbSignalHnd sh, int mux)
 
KvaDbStatus kvaDbGetSignalMode (KvaDbSignalHnd sh, int *mux)
 
KvaDbStatus kvaDbGetSignalValueFloat (KvaDbSignalHnd sh, double *f, void *data, size_t len)
 
KvaDbStatus kvaDbGetSignalValueInteger (KvaDbSignalHnd sh, int *f, void *data, size_t len)
 
KvaDbStatus kvaDbGetSignalValueEnum (KvaDbSignalHnd sh, char *buf, size_t buflen, void *data, size_t len)
 
KvaDbStatus kvaDbGetSignalValueLimits (KvaDbSignalHnd sh, double *minval, double *maxval)
 
KvaDbStatus kvaDbGetSignalValueScaling (KvaDbSignalHnd sh, double *factor, double *offset)
 
KvaDbStatus kvaDbGetSignalValueSize (KvaDbSignalHnd sh, int *startbit, int *length)
 
KvaDbStatus kvaDbGetSignalName (KvaDbSignalHnd sh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetSignalQualifiedName (KvaDbSignalHnd sh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetSignalComment (KvaDbSignalHnd sh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetSignalUnit (KvaDbSignalHnd sh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetSignalEncoding (KvaDbSignalHnd sh, KvaDbSignalEncoding *e)
 
KvaDbStatus kvaDbGetSignalRepresentationType (KvaDbSignalHnd sh, KvaDbSignalType *t)
 
KvaDbStatus kvaDbGetSignalPresentationType (KvaDbSignalHnd sh, KvaDbSignalType *t)
 
KvaDbStatus kvaDbAddSignal (KvaDbMessageHnd mh, KvaDbSignalHnd *sh)
 
KvaDbStatus kvaDbDeleteSignal (KvaDbMessageHnd mh, KvaDbSignalHnd sh)
 
KvaDbStatus kvaDbSetSignalValueLimits (KvaDbSignalHnd sh, double minval, double maxval)
 
KvaDbStatus kvaDbSetSignalValueScaling (KvaDbSignalHnd sh, double factor, double offset)
 
KvaDbStatus kvaDbSetSignalValueSize (KvaDbSignalHnd sh, int startbit, int length)
 
KvaDbStatus kvaDbSetSignalName (KvaDbSignalHnd sh, char *buf)
 
KvaDbStatus kvaDbSetSignalComment (KvaDbSignalHnd sh, char *buf)
 
KvaDbStatus kvaDbSetSignalUnit (KvaDbSignalHnd sh, char *buf)
 
KvaDbStatus kvaDbSetSignalEncoding (KvaDbSignalHnd sh, KvaDbSignalEncoding e)
 
KvaDbStatus kvaDbSetSignalRepresentationType (KvaDbSignalHnd sh, KvaDbSignalType t)
 
KvaDbStatus kvaDbGetFirstNode (KvaDbHnd dh, KvaDbNodeHnd *nh)
 
KvaDbStatus kvaDbGetNextNode (KvaDbHnd dh, KvaDbNodeHnd *nh)
 
KvaDbStatus kvaDbGetNodeByName (KvaDbHnd dh, const char *node_name, KvaDbNodeHnd *nh)
 
KvaDbStatus kvaDbGetNodeAttributeIntByName (KvaDbNodeHnd nh, const char *attrName, int *val)
 
KvaDbStatus kvaDbAddNode (KvaDbHnd dh, KvaDbNodeHnd *nh)
 
KvaDbStatus kvaDbDeleteNode (KvaDbHnd dh, KvaDbNodeHnd nh)
 
KvaDbStatus kvaDbSetNodeName (KvaDbNodeHnd nh, char *buf)
 
KvaDbStatus kvaDbGetNodeName (KvaDbNodeHnd nh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbSetNodeComment (KvaDbNodeHnd nh, char *buf)
 
KvaDbStatus kvaDbAddReceiveNodeToSignal (KvaDbSignalHnd sh, KvaDbNodeHnd nh)
 
KvaDbStatus kvaDbRemoveReceiveNodeFromSignal (KvaDbSignalHnd sh, KvaDbNodeHnd nh)
 
KvaDbStatus kvaDbSignalContainsReceiveNode (KvaDbSignalHnd sh, KvaDbNodeHnd nh)
 
KvaDbStatus kvaDbStoreSignalValuePhys (KvaDbSignalHnd sh, unsigned char *can_data, int dlc, double value)
 
KvaDbStatus kvaDbStoreSignalValueRaw (KvaDbSignalHnd sh, unsigned char *can_data, int dlc, int value)
 
KvaDbStatus kvaDbGetFirstAttributeDefinition (KvaDbHnd dh, KvaDbAttributeDefHnd *adh)
 
KvaDbStatus kvaDbGetAttributeDefinitionByName (KvaDbHnd dh, const char *attrName, KvaDbAttributeDefHnd *adh)
 
KvaDbStatus kvaDbGetNextAttributeDefinition (KvaDbAttributeDefHnd adh, KvaDbAttributeDefHnd *nadh)
 
KvaDbStatus kvaDbGetAttributeDefinitionType (KvaDbAttributeDefHnd adh, KvaDbAttributeType *at)
 
KvaDbStatus kvaDbGetAttributeDefinitionOwner (KvaDbAttributeDefHnd adh, KvaDbAttributeOwner *ao)
 
KvaDbStatus kvaDbGetAttributeDefinitionName (KvaDbAttributeDefHnd adh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetAttributeDefinitionInt (KvaDbAttributeDefHnd adh, int *def, int *min, int *max)
 
KvaDbStatus kvaDbGetAttributeDefinitionFloat (KvaDbAttributeDefHnd adh, float *def, float *min, float *max)
 
KvaDbStatus kvaDbGetAttributeDefinitionString (KvaDbAttributeDefHnd adh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbGetAttributeDefinitionEnumeration (KvaDbAttributeDefHnd adh, int *def)
 
KvaDbStatus kvaDbAddAttributeDefinition (KvaDbHnd dh, KvaDbAttributeDefHnd *adh)
 
KvaDbStatus kvaDbSetAttributeDefinitionName (KvaDbAttributeDefHnd adh, const char *adName)
 
KvaDbStatus kvaDbSetAttributeDefinitionType (KvaDbAttributeDefHnd adh, KvaDbAttributeType adType)
 
KvaDbStatus kvaDbSetAttributeDefinitionOwner (KvaDbAttributeDefHnd adh, KvaDbAttributeOwner adOwner)
 
KvaDbStatus kvaDbAddAttributeDefinitionEnum (KvaDbAttributeDefHnd adh, const char *eName, int eValue)
 
KvaDbStatus kvaDbSetAttributeDefinitionEnumDefault (KvaDbAttributeDefHnd adh, int dValue)
 
KvaDbStatus kvaDbSetAttributeDefinitionInt (KvaDbAttributeDefHnd adh, int def, int min, int max)
 
KvaDbStatus kvaDbSetAttributeDefinitionFloat (KvaDbAttributeDefHnd adh, float def, float min, float max)
 
KvaDbStatus kvaDbSetAttributeDefinitionString (KvaDbAttributeDefHnd adh, const char *buf)
 
KvaDbStatus kvaDbAddMsgAttribute (KvaDbMessageHnd mh, KvaDbAttributeDefHnd adh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbDeleteMsgAttribute (KvaDbMessageHnd mh, KvaDbAttributeHnd ah)
 
KvaDbStatus kvaDbAddSignalAttribute (KvaDbSignalHnd sh, KvaDbAttributeDefHnd adh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetFirstEnumValue (KvaDbSignalHnd sh, KvaDbEnumValueHnd *eh)
 
KvaDbStatus kvaDbGetNextEnumValue (KvaDbSignalHnd sh, KvaDbEnumValueHnd *eh)
 
KvaDbStatus kvaDbGetEnumValue (KvaDbEnumValueHnd eh, int *val, char *buf, size_t buflen)
 
KvaDbStatus kvaDbAddEnumValue (KvaDbSignalHnd sh, int val, const char *name)
 
KvaDbStatus kvaDbDeleteEnumValue (KvaDbSignalHnd sh, KvaDbEnumValueHnd eh)
 
KvaDbStatus kvaDbDeleteSignalAttribute (KvaDbSignalHnd sh, KvaDbAttributeHnd ah)
 
KvaDbStatus kvaDbAddNodeAttribute (KvaDbNodeHnd nh, KvaDbAttributeDefHnd adh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbDeleteNodeAttribute (KvaDbNodeHnd nh, KvaDbAttributeHnd ah)
 
KvaDbStatus kvaDbGetFirstMsgAttribute (KvaDbMessageHnd mh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetMsgAttributeByName (KvaDbMessageHnd mh, const char *attrName, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetFirstSignalAttribute (KvaDbSignalHnd sh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetSignalAttributeByName (KvaDbSignalHnd sh, const char *attrName, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetFirstNodeAttribute (KvaDbNodeHnd nh, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetNodeAttributeByName (KvaDbNodeHnd nh, const char *attrName, KvaDbAttributeHnd *ah)
 
KvaDbStatus kvaDbGetNextAttribute (KvaDbAttributeHnd ah, KvaDbAttributeHnd *nah)
 
KvaDbStatus kvaDbGetAttributeType (KvaDbAttributeHnd ah, KvaDbAttributeType *at)
 
KvaDbStatus kvaDbGetAttributeName (KvaDbAttributeHnd adh, char *buf, size_t buflen)
 
KvaDbStatus kvaDbSetAttributeValueInt (KvaDbAttributeHnd ah, int val)
 
KvaDbStatus kvaDbGetAttributeValueInt (KvaDbAttributeHnd ah, int *val)
 
KvaDbStatus kvaDbSetAttributeValueFloat (KvaDbAttributeHnd ah, float val)
 
KvaDbStatus kvaDbGetAttributeValueFloat (KvaDbAttributeHnd ah, float *val)
 
KvaDbStatus kvaDbSetAttributeValueString (KvaDbAttributeHnd ah, const char *buf, int buflen)
 
KvaDbStatus kvaDbGetAttributeValueString (KvaDbAttributeHnd ah, char *buf, size_t buflen)
 
KvaDbStatus kvaDbSetAttributeValueEnumeration (KvaDbAttributeHnd ah, int val)
 
KvaDbStatus kvaDbGetAttributeValueEnumeration (KvaDbAttributeHnd ah, int *val)
 
KvaDbStatus kvaDbMsgDlcToBytes (KvaDbProtocolType prot, unsigned int dlc, unsigned int *numBytes)
 
KvaDbStatus kvaDbBytesToMsgDlc (KvaDbProtocolType prot, unsigned int numBytes, unsigned int *dlc)
 

CANDBDatabaseFlags API Database Flags

The following value is used by kvaDbGetFlags().

#define KVADB_DATABASE_J1939   0x0001
 
typedef void * KvaDbHnd
 
typedef void * KvaDbMessageHnd
 
typedef void * KvaDbSignalHnd
 
typedef void * KvaDbNodeHnd
 
typedef void * KvaDbAttributeHnd
 
typedef void * KvaDbAttributeDefHnd
 
typedef void * KvaDbEnumValueHnd
 

Detailed Description

Copyright 2002-2015 by KVASER AB, SWEDEN

WWW: http://www.kvaser.com

This software is furnished under a license and may be used and copied only in accordance with the terms of such license.

Definitions for the CAN Database API.

Author
Kvaser AB

Macro Definition Documentation

◆ WINAPI

#define WINAPI
Examples:
thread.c.

◆ KVADB_MESSAGE_EXT

#define KVADB_MESSAGE_EXT   0x80000000

Message is an extended CAN message.

◆ KVADB_MESSAGE_J1939

#define KVADB_MESSAGE_J1939   0x00000001

Message uses J1939 protocol.

◆ KVADB_MESSAGE_WAKEUP

#define KVADB_MESSAGE_WAKEUP   0x00000002

Message is a wake-up frame, Id/msg/dlc are undefined.

◆ KVADB_DATABASE_J1939

#define KVADB_DATABASE_J1939   0x0001

The database uses the J1939 protocol.

◆ KVADB_MUX_SIGNAL

#define KVADB_MUX_SIGNAL   -2

Multiplex mode value of a multiplexer signal.

◆ KVADB_MUX_INDEPENDENT

#define KVADB_MUX_INDEPENDENT   -1

Miltiplex mode value of an independent signal.

Typedef Documentation

◆ KvaDbHnd

typedef void* KvaDbHnd

Database handle.

◆ KvaDbMessageHnd

typedef void* KvaDbMessageHnd

Message handle.

◆ KvaDbSignalHnd

typedef void* KvaDbSignalHnd

Signal handle.

◆ KvaDbNodeHnd

typedef void* KvaDbNodeHnd

Node handle.

◆ KvaDbAttributeHnd

typedef void* KvaDbAttributeHnd

Attribute handle.

◆ KvaDbAttributeDefHnd

typedef void* KvaDbAttributeDefHnd

Attribute definition handle.

◆ KvaDbEnumValueHnd

typedef void* KvaDbEnumValueHnd

Enumeration value handle.

Enumeration Type Documentation

◆ KvaDbStatus

Enumerator
kvaDbOK 

OK - no error.

kvaDbErr_Fail 

General failure.

kvaDbErr_NoDatabase 

No database was found.

kvaDbErr_Param 

One or more of the parameters in call is erronous.

kvaDbErr_NoMsg 

No message was found.

kvaDbErr_NoSignal 

No signal was found.

kvaDbErr_Internal 

An internal error occured in the library.

kvaDbErr_DbFileOpen 

Could not open the database file.

kvaDbErr_DatabaseInternal 

An internal error occured in the database handler.

kvaDbErr_NoNode 

Could not find the database node.

kvaDbErr_NoAttrib 

No attribute found.

kvaDbErr_OnlyOneAllowed 

Only one CANdb structure is allowed.

◆ KvaDbSignalEncoding

Enumerator
kvaDb_Intel 

Intel.

kvaDb_Motorola 

kvaDb_Motorola

◆ KvaDbSignalType

Enumerator
kvaDb_Invalid 

Invalid representation.

kvaDb_Signed 

Signed integer.

kvaDb_Unsigned 

Unsigned integer.

kvaDb_Float 

Float.

kvaDb_Double 

Double.

◆ KvaDbAttributeType

Enumerator
kvaDb_AttributeInvalid 

Invalid attribute.

kvaDb_AttributeInteger 

Integer attribute.

kvaDb_AttributeFloat 

Float attribute.

kvaDb_AttributeEnumeration 

Enumeration attribute.

kvaDb_AttributeString 

String attribute.

◆ KvaDbAttributeOwner

Enumerator
kvaDb_AttributeOwnerInvalid 

Invalid owner.

kvaDb_AttributeOwnerDb 

Database owner.

kvaDb_AttributeOwnerMessage 

Message owner.

kvaDb_AttributeOwnerNode 

Node owner.

kvaDb_AttributeOwnerSignal 

Signal owner.

kvaDb_AttributeOwnerEnv 

Environment owner.

◆ KvaDbProtocolType

Enumerator
kvaDb_ProtocolCan 

Can protocol.

kvaDb_ProtocolVan 

Van protocol.

kvaDb_ProtocolLin 

Lin protocol.

kvaDb_ProtocolMOST 

MOST protocol.

kvaDb_ProtocolFlexRay 

FlexRay protocol.

kvaDb_ProtocolBEAN 

BEAN protocol.

kvaDb_ProtocolEthernet 

Ethernet protocol.

kvaDb_ProtocolAFDX 

AFDX protocol.

kvaDb_ProtocolJ1708 

J1708 protocol.

kvaDb_ProtocolCanFD 

Can FD protocol.

kvaDb_ProtocolUnknown 

Unknown or not specified protocol.