src/win32/CanFestival-3.def
author Robert Lehmann <robert.lehmann@sitec-systems.de>
Tue, 28 Jul 2015 16:36:55 +0200
changeset 793 72e9e1064432
parent 700 23df92154894
child 801 32d146b64a35
permissions -rw-r--r--
timers_unix: Fix termination problem of WaitReceiveTaskEnd

The function pthread_kill sends the Signal thread and to the own process.
If you use this construct than the application which calls uses the
canfestival api will terminate at the call of canClose. To avoid that
use pthread_cancel instead of pthread_kill. To use the pthread_cancel call
you need to set the cancel ability in the thread function. That means
you need to call pthread_setcancelstate and pthread_setcanceltype.
For the termination of the thread at any time it is important to set the
cancel type to PTHREAD_CANCEL_ASYNCHRONOUS.
255
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     1
; This file is part of CanFestival, a library implementing CanOpen Stack. 
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     2
;
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     3
; CanFestival Copyright (C): Edouard TISSERANT and Francis DUPIN
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     4
; CanFestival Win32 port Copyright (C) 2007 Leonid Tochinski, ChattenAssociates, Inc.
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     5
;
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     6
; See COPYING file for copyrights details.
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     7
; 
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     8
; This library is free software; you can redistribute it and/or
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
     9
; modify it under the terms of the GNU Lesser General Public
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    10
; License as published by the Free Software Foundation; either
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    11
; version 2.1 of the License, or (at your option) any later version.
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    12
;
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    13
; This library is distributed in the hope that it will be useful,
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    14
; but WITHOUT ANY WARRANTY; without even the implied warranty of
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    15
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    16
; Lesser General Public License for more details.
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    17
;
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    18
; You should have received a copy of the GNU Lesser General Public
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    19
; License along with this library; if not, write to the Free Software
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    20
; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
7b9f36dbfe5f *** empty log message ***
leonid
parents: 252
diff changeset
    21
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    22
; CanFestival-3.def : Declares DLL exports.
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    23
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    24
LIBRARY      "CanFestival-3.DLL"
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    25
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    26
EXPORTS
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    27
320
f82e758840bd Some fixes suggested by Luis Jim?nez, plus some minor enhancements in DCF.
etisserant
parents: 255
diff changeset
    28
        ; dcf.h
700
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    29
        check_and_start_node
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    30
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    31
        ; lifegrd.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    32
        _heartbeatError
589
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
    33
        _post_SlaveBootup
635
30a0e926bb2e ADDED: - new callback post_SlaveStateChange so that a master can monitor the state of its slave nodes using a heartbeat.
Christian Taedcke
parents: 594
diff changeset
    34
        _post_SlaveStateChange
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    35
        getNodeState
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    36
        heartbeatInit
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    37
        heartbeatStop
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    38
        proceedNODE_GUARD
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    39
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    40
        ; nmtMaster.h
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    41
        masterSendNMTstateChange
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    42
        masterSendNMTnodeguard
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    43
        masterRequestNodeState
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    44
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    45
        ; nmtSlave.h
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    46
        proceedNMTstateChange
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    47
        slaveSendBootUp
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    48
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    49
        ; objacces.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    50
        _storeODSubIndex
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    51
        accessDictionaryError
594
17a171fe7c56 re-use macro for objaccess
'Gr?gory Tr?lat <gregory.trelat@lolitech.fr>'
parents: 589
diff changeset
    52
        _getODentry
17a171fe7c56 re-use macro for objaccess
'Gr?gory Tr?lat <gregory.trelat@lolitech.fr>'
parents: 589
diff changeset
    53
        _setODentry
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    54
        scanIndexOD
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    55
        RegisterSetODentryCallBack
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    56
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    57
        ; pdo.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    58
        buildPDO
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    59
        sendPDOrequest
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    60
        proceedPDO
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    61
        sendPDOevent
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    62
        _sendPDOevent
681
3c42b5df66b1 Win32-Dll:
ct@78566C00-6F59-1014-AAEE-A77C3B9AAB40
parents: 640
diff changeset
    63
        sendOnePDOevent
700
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    64
        PDOInit
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    65
        PDOStop
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    66
        PDOEventTimerAlarm
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    67
        PDOInhibitTimerAlarm
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    68
        CopyBits
23df92154894 Win32 fixes:
Christian Taedcke <hacking@taedcke.com>
parents: 681
diff changeset
    69
        _RxPDO_EventTimers_Handler
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    70
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    71
        ; sdo.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    72
        SDOTimeoutAlarm
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    73
        resetSDO
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    74
        SDOlineToObjdict
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    75
        objdictToSDOline
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    76
        lineToSDO
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    77
        SDOtoLine
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    78
        failedSDO
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    79
        resetSDOline
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    80
        initSDOline
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    81
        getSDOfreeLine
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    82
        getSDOlineOnUse
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    83
        closeSDOtransfer
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    84
        getSDOlineRestBytes
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    85
        setSDOlineRestBytes
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    86
        sendSDO
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    87
        sendSDOabort
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    88
        proceedSDO
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    89
        writeNetworkDict
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    90
        writeNetworkDictCallBack
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    91
        readNetworkDict
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    92
        readNetworkDictCallback
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    93
        getReadResultNetworkDict
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
    94
        getWriteResultNetworkDict
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    95
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    96
        ; states.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    97
        _operational
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    98
        _preOperational
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
    99
        _initialisation
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   100
        _stopped
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   101
        canDispatch
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   102
        getState
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   103
        setState
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   104
        getNodeId
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   105
        setNodeId
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   106
        ;initPreOperationalMode
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   107
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   108
        ; sync.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   109
        startSYNC
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   110
        stopSYNC
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   111
        _post_sync
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   112
        _post_TPDO
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   113
        sendSYNC
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   114
        proceedSYNC
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   115
        
589
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   116
        ; emcy.h
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   117
        emergencyInit
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   118
        emergencyStop
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   119
        EMCY_setError
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   120
        EMCY_errorRecovered
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   121
        _post_emcy
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   122
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   123
        ; timer.h
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   124
        SetAlarm
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   125
        DelAlarm
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   126
        TimeDispatch
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   127
        setTimer
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   128
        getElapsedTime
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   129
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   130
        ; timers_driver.h
589
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   131
        TimerInit
06f6c12d5f78 Update CanFestival-3.def for visual studio users :
greg
parents: 320
diff changeset
   132
        TimerCleanup
145
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   133
        StartTimerLoop
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   134
        StopTimerLoop
e747d2e26af0 Win32 Native support and dynamicaly loaded CAN drivers for Linux, Cygwin and Win32.
etisserant
parents:
diff changeset
   135
        CreateReceiveTask
252
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   136
        
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   137
        ; win32/canfestival.h
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   138
		LoadCanDriver
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   139
		canSend
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   140
		canOpen
b0dd37421d28 *** empty log message ***
leonid
parents: 225
diff changeset
   141
		canClose
640
e9a4e4c308bb ADDED: - LeaveMutex and EnterMutex to exported symbols
Christian Taedcke <Christian.Taedcke@ica-traffic.de>
parents: 635
diff changeset
   142
		
e9a4e4c308bb ADDED: - LeaveMutex and EnterMutex to exported symbols
Christian Taedcke <Christian.Taedcke@ica-traffic.de>
parents: 635
diff changeset
   143
		LeaveMutex
e9a4e4c308bb ADDED: - LeaveMutex and EnterMutex to exported symbols
Christian Taedcke <Christian.Taedcke@ica-traffic.de>
parents: 635
diff changeset
   144
		EnterMutex
e9a4e4c308bb ADDED: - LeaveMutex and EnterMutex to exported symbols
Christian Taedcke <Christian.Taedcke@ica-traffic.de>
parents: 635
diff changeset
   145