nico@207: \hypertarget{drivers__win32_8cpp}{ nico@207: \section{/home/epimerde/documents/tc11/Can\-Festival-3/drivers/win32/drivers\_\-win32.cpp File Reference} nico@207: \label{drivers__win32_8cpp}\index{/home/epimerde/documents/tc11/CanFestival-3/drivers/win32/drivers_win32.cpp@{/home/epimerde/documents/tc11/CanFestival-3/drivers/win32/drivers\_\-win32.cpp}} nico@207: } nico@207: {\tt \#include $<$windows.h$>$}\par nico@207: {\tt \#include \char`\"{}canfestival.h\char`\"{}}\par nico@207: {\tt \#include \char`\"{}timer.h\char`\"{}}\par nico@207: {\tt \#include \char`\"{}timers\_\-driver.h\char`\"{}}\par nico@207: \subsection*{Data Structures} nico@207: \begin{CompactItemize} nico@207: \item nico@207: class \hyperlink{classdriver__procs}{driver\_\-procs} nico@207: \item nico@207: struct \hyperlink{structdriver__data}{driver\_\-data} nico@207: \end{CompactItemize} nico@207: \subsection*{Defines} nico@207: \begin{CompactItemize} nico@207: \item nico@207: \#define \hyperlink{drivers__win32_8cpp_74c6a27b44fd54de5cb021299ffce612}{DLL\_\-CALL}(funcname)~($\ast$\_\-\#\#funcname) nico@207: \item nico@207: \#define \hyperlink{drivers__win32_8cpp_7f7ce94bf48fde67f4af7b64c7ca4c85}{FCT\_\-PTR\_\-INIT}~=NULL nico@207: \item nico@207: \#define \hyperlink{drivers__win32_8cpp_fa9a7a4802f45e593e1a49e764b12849}{my\-TEXT}(str)~str nico@207: \end{CompactItemize} nico@207: \subsection*{Typedefs} nico@207: \begin{CompactItemize} nico@207: \item nico@207: typedef UNS8($\ast$) \hyperlink{drivers__win32_8cpp_f0240c9d4c35205726e5ae81888327dd}{CANRECEIVE\_\-DRIVER\_\-PROC} (void $\ast$inst, \hyperlink{structMessage}{Message} $\ast$m) nico@207: \item nico@207: typedef UNS8($\ast$) \hyperlink{drivers__win32_8cpp_90aa70ea2296b46e3fa52ff5e4bbc399}{CANSEND\_\-DRIVER\_\-PROC} (void $\ast$inst, const \hyperlink{structMessage}{Message} $\ast$m) nico@207: \item nico@207: typedef void $\ast$($\ast$) \hyperlink{drivers__win32_8cpp_5db8713e505308b09dbe85ecbe707607}{CANOPEN\_\-DRIVER\_\-PROC} (\hyperlink{structstruct__s__BOARD}{s\_\-BOARD} $\ast$board) nico@207: \item nico@207: typedef int($\ast$) \hyperlink{drivers__win32_8cpp_5613306de0117eb5242ea9934348eb9f}{CANCLOSE\_\-DRIVER\_\-PROC} (void $\ast$inst) nico@207: \end{CompactItemize} nico@207: \subsection*{Functions} nico@207: \begin{CompactItemize} nico@207: \item nico@207: \hyperlink{win32_2canfestival_8h_c4a0f44120dee396ab6bb57e23effaa8}{LIB\_\-HANDLE} \hyperlink{drivers__win32_8cpp_a6eed61fc15f41f772d4645d7a5edeb5}{Load\-Can\-Driver} (char $\ast$driver\_\-name) nico@207: \item nico@207: UNS8 \hyperlink{drivers__win32_8cpp_c608a4ba478a809fd963a342a24226fd}{can\-Receive} (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} fd0, \hyperlink{structMessage}{Message} $\ast$m) nico@207: \item nico@207: void $\ast$ \hyperlink{drivers__win32_8cpp_469503c5171a0cdd8369c1ec39d97d2c}{can\-Receive\-Loop} (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} fd0) nico@207: \item nico@207: UNS8 \hyperlink{drivers__win32_8cpp_01559baf432253d46f1142231a968247}{can\-Send} (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} fd0, \hyperlink{structMessage}{Message} $\ast$m) nico@207: \item nico@207: \hyperlink{win32_2applicfg_8h_712c7b28987b12b8d400df19c92d0f5e}{CAN\_\-HANDLE} \hyperlink{drivers__win32_8cpp_d82cede875fd89036cdeda13e293dafe}{can\-Open} (\hyperlink{structstruct__s__BOARD}{s\_\-BOARD} $\ast$board, \hyperlink{structstruct__CO__Data}{CO\_\-Data} $\ast$d) nico@207: \item nico@207: int \hyperlink{drivers__win32_8cpp_02957f72a9b951603adb98a142bd447b}{can\-Close} (\hyperlink{structstruct__CO__Data}{CO\_\-Data} $\ast$d) nico@207: \end{CompactItemize} nico@207: \subsection*{Variables} nico@207: \begin{CompactItemize} nico@207: \item nico@207: \hyperlink{classdriver__procs}{driver\_\-procs} \hyperlink{drivers__win32_8cpp_410d0af15c08b84bce57bd000f9f8034}{s\_\-driver\_\-procs} nico@207: \end{CompactItemize} nico@207: nico@207: nico@207: \subsection{Define Documentation} nico@207: \hypertarget{drivers__win32_8cpp_74c6a27b44fd54de5cb021299ffce612}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!DLL_CALL@{DLL\_\-CALL}} nico@207: \index{DLL_CALL@{DLL\_\-CALL}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[DLL\_\-CALL]{\setlength{\rightskip}{0pt plus 5cm}\#define DLL\_\-CALL(funcname)~($\ast$\_\-\#\#funcname)}} nico@207: \label{drivers__win32_8cpp_74c6a27b44fd54de5cb021299ffce612} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 32 of file drivers\_\-win32.cpp.\hypertarget{drivers__win32_8cpp_7f7ce94bf48fde67f4af7b64c7ca4c85}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!FCT_PTR_INIT@{FCT\_\-PTR\_\-INIT}} nico@207: \index{FCT_PTR_INIT@{FCT\_\-PTR\_\-INIT}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[FCT\_\-PTR\_\-INIT]{\setlength{\rightskip}{0pt plus 5cm}\#define FCT\_\-PTR\_\-INIT~=NULL}} nico@207: \label{drivers__win32_8cpp_7f7ce94bf48fde67f4af7b64c7ca4c85} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 33 of file drivers\_\-win32.cpp.\hypertarget{drivers__win32_8cpp_fa9a7a4802f45e593e1a49e764b12849}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!myTEXT@{myTEXT}} nico@207: \index{myTEXT@{myTEXT}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[myTEXT]{\setlength{\rightskip}{0pt plus 5cm}\#define my\-TEXT(str)~str}} nico@207: \label{drivers__win32_8cpp_fa9a7a4802f45e593e1a49e764b12849} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 91 of file drivers\_\-win32.cpp. nico@207: nico@207: \subsection{Typedef Documentation} nico@207: \hypertarget{drivers__win32_8cpp_5613306de0117eb5242ea9934348eb9f}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!CANCLOSE_DRIVER_PROC@{CANCLOSE\_\-DRIVER\_\-PROC}} nico@207: \index{CANCLOSE_DRIVER_PROC@{CANCLOSE\_\-DRIVER\_\-PROC}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[CANCLOSE\_\-DRIVER\_\-PROC]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$) \hyperlink{drivers__win32_8cpp_5613306de0117eb5242ea9934348eb9f}{CANCLOSE\_\-DRIVER\_\-PROC}(void $\ast$inst)}} nico@207: \label{drivers__win32_8cpp_5613306de0117eb5242ea9934348eb9f} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 43 of file drivers\_\-win32.cpp.\hypertarget{drivers__win32_8cpp_5db8713e505308b09dbe85ecbe707607}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!CANOPEN_DRIVER_PROC@{CANOPEN\_\-DRIVER\_\-PROC}} nico@207: \index{CANOPEN_DRIVER_PROC@{CANOPEN\_\-DRIVER\_\-PROC}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[CANOPEN\_\-DRIVER\_\-PROC]{\setlength{\rightskip}{0pt plus 5cm}typedef void$\ast$($\ast$) \hyperlink{drivers__win32_8cpp_5db8713e505308b09dbe85ecbe707607}{CANOPEN\_\-DRIVER\_\-PROC}(\hyperlink{structstruct__s__BOARD}{s\_\-BOARD} $\ast$board)}} nico@207: \label{drivers__win32_8cpp_5db8713e505308b09dbe85ecbe707607} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 42 of file drivers\_\-win32.cpp.\hypertarget{drivers__win32_8cpp_f0240c9d4c35205726e5ae81888327dd}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!CANRECEIVE_DRIVER_PROC@{CANRECEIVE\_\-DRIVER\_\-PROC}} nico@207: \index{CANRECEIVE_DRIVER_PROC@{CANRECEIVE\_\-DRIVER\_\-PROC}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[CANRECEIVE\_\-DRIVER\_\-PROC]{\setlength{\rightskip}{0pt plus 5cm}typedef UNS8($\ast$) \hyperlink{drivers__win32_8cpp_f0240c9d4c35205726e5ae81888327dd}{CANRECEIVE\_\-DRIVER\_\-PROC}(void $\ast$inst, \hyperlink{structMessage}{Message} $\ast$m)}} nico@207: \label{drivers__win32_8cpp_f0240c9d4c35205726e5ae81888327dd} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 40 of file drivers\_\-win32.cpp.\hypertarget{drivers__win32_8cpp_90aa70ea2296b46e3fa52ff5e4bbc399}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!CANSEND_DRIVER_PROC@{CANSEND\_\-DRIVER\_\-PROC}} nico@207: \index{CANSEND_DRIVER_PROC@{CANSEND\_\-DRIVER\_\-PROC}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[CANSEND\_\-DRIVER\_\-PROC]{\setlength{\rightskip}{0pt plus 5cm}typedef UNS8($\ast$) \hyperlink{drivers__win32_8cpp_90aa70ea2296b46e3fa52ff5e4bbc399}{CANSEND\_\-DRIVER\_\-PROC}(void $\ast$inst, const \hyperlink{structMessage}{Message} $\ast$m)}} nico@207: \label{drivers__win32_8cpp_90aa70ea2296b46e3fa52ff5e4bbc399} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 41 of file drivers\_\-win32.cpp. nico@207: nico@207: \subsection{Function Documentation} nico@207: \hypertarget{drivers__win32_8cpp_02957f72a9b951603adb98a142bd447b}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!canClose@{canClose}} nico@207: \index{canClose@{canClose}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[canClose]{\setlength{\rightskip}{0pt plus 5cm}int can\-Close (\hyperlink{structstruct__CO__Data}{CO\_\-Data} $\ast$ {\em d})}} nico@207: \label{drivers__win32_8cpp_02957f72a9b951603adb98a142bd447b} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 194 of file drivers\_\-win32.cpp. nico@207: nico@207: References can\-Close(), struct\_\-CO\_\-Data::can\-Handle, driver\_\-data::continue\_\-receive\_\-thread, DLL\_\-CALL, Enter\-Mutex(), CANPort::fd, driver\_\-data::inst, Leave\-Mutex(), driver\_\-procs::m\_\-can\-Close, driver\_\-data::receive\_\-thread, CANPort::receive\-Task, s\_\-driver\_\-procs, and Wait\-Receive\-Task\-End().\hypertarget{drivers__win32_8cpp_d82cede875fd89036cdeda13e293dafe}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!canOpen@{canOpen}} nico@207: \index{canOpen@{canOpen}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[canOpen]{\setlength{\rightskip}{0pt plus 5cm}\hyperlink{win32_2applicfg_8h_712c7b28987b12b8d400df19c92d0f5e}{CAN\_\-HANDLE} can\-Open (\hyperlink{structstruct__s__BOARD}{s\_\-BOARD} $\ast$ {\em board}, \hyperlink{structstruct__CO__Data}{CO\_\-Data} $\ast$ {\em d})}} nico@207: \label{drivers__win32_8cpp_d82cede875fd89036cdeda13e293dafe} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 172 of file drivers\_\-win32.cpp. nico@207: nico@207: References struct\_\-s\_\-BOARD::baudrate, struct\_\-s\_\-BOARD::busname, struct\_\-CO\_\-Data::can\-Handle, can\-Open(), canports, can\-Receive\-Loop(), driver\_\-data::continue\_\-receive\_\-thread, Create\-Receive\-Task(), CANPort::d, driver\_\-data::d, DLL\_\-CALL, Enter\-Mutex(), CANPort::fd, driver\_\-data::inst, Leave\-Mutex(), driver\_\-procs::m\_\-can\-Open, MAX\_\-NB\_\-CAN\_\-PORTS, driver\_\-data::receive\_\-thread, s\_\-driver\_\-procs, and CANPort::used.\hypertarget{drivers__win32_8cpp_c608a4ba478a809fd963a342a24226fd}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!canReceive@{canReceive}} nico@207: \index{canReceive@{canReceive}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[canReceive]{\setlength{\rightskip}{0pt plus 5cm}UNS8 can\-Receive (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} {\em fd0}, \hyperlink{structMessage}{Message} $\ast$ {\em m})}} nico@207: \label{drivers__win32_8cpp_c608a4ba478a809fd963a342a24226fd} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 124 of file drivers\_\-win32.cpp. nico@207: nico@207: References driver\_\-data::inst, driver\_\-procs::m\_\-can\-Receive, and s\_\-driver\_\-procs.\hypertarget{drivers__win32_8cpp_469503c5171a0cdd8369c1ec39d97d2c}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!canReceiveLoop@{canReceiveLoop}} nico@207: \index{canReceiveLoop@{canReceiveLoop}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[canReceiveLoop]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ can\-Receive\-Loop (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} {\em fd0})}} nico@207: \label{drivers__win32_8cpp_469503c5171a0cdd8369c1ec39d97d2c} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 134 of file drivers\_\-win32.cpp. nico@207: nico@207: References can\-Dispatch(), can\-Receive(), driver\_\-data::continue\_\-receive\_\-thread, driver\_\-data::d, Enter\-Mutex(), and Leave\-Mutex().\hypertarget{drivers__win32_8cpp_01559baf432253d46f1142231a968247}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!canSend@{canSend}} nico@207: \index{canSend@{canSend}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[canSend]{\setlength{\rightskip}{0pt plus 5cm}UNS8 can\-Send (\hyperlink{win32_2applicfg_8h_7ef59f941603c6680e74fc335523f17e}{CAN\_\-PORT} {\em fd0}, \hyperlink{structMessage}{Message} $\ast$ {\em m})}} nico@207: \label{drivers__win32_8cpp_01559baf432253d46f1142231a968247} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 156 of file drivers\_\-win32.cpp. nico@207: nico@207: References can\-Send(), DLL\_\-CALL, Enter\-Mutex(), driver\_\-data::inst, Leave\-Mutex(), driver\_\-procs::m\_\-can\-Send, s\_\-driver\_\-procs, and UNS8.\hypertarget{drivers__win32_8cpp_a6eed61fc15f41f772d4645d7a5edeb5}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!LoadCanDriver@{LoadCanDriver}} nico@207: \index{LoadCanDriver@{LoadCanDriver}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[LoadCanDriver]{\setlength{\rightskip}{0pt plus 5cm}\hyperlink{win32_2canfestival_8h_c4a0f44120dee396ab6bb57e23effaa8}{LIB\_\-HANDLE} Load\-Can\-Driver (char $\ast$ {\em driver\_\-name})}} nico@207: \label{drivers__win32_8cpp_a6eed61fc15f41f772d4645d7a5edeb5} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 119 of file drivers\_\-win32.cpp. nico@207: nico@207: References can\-Close(), can\-Open(), can\-Receive(), can\-Send(), DLSYM, driver\_\-procs::load\_\-canfestival\_\-driver(), and s\_\-driver\_\-procs. nico@207: nico@207: \subsection{Variable Documentation} nico@207: \hypertarget{drivers__win32_8cpp_410d0af15c08b84bce57bd000f9f8034}{ nico@207: \index{drivers_win32.cpp@{drivers\_\-win32.cpp}!s_driver_procs@{s\_\-driver\_\-procs}} nico@207: \index{s_driver_procs@{s\_\-driver\_\-procs}!drivers_win32.cpp@{drivers\_\-win32.cpp}} nico@207: \subsubsection[s\_\-driver\_\-procs]{\setlength{\rightskip}{0pt plus 5cm}\hyperlink{classdriver__procs}{driver\_\-procs} \hyperlink{drivers__win32_8cpp_410d0af15c08b84bce57bd000f9f8034}{s\_\-driver\_\-procs}}} nico@207: \label{drivers__win32_8cpp_410d0af15c08b84bce57bd000f9f8034} nico@207: nico@207: nico@207: nico@207: nico@207: Definition at line 117 of file drivers\_\-win32.cpp.