CanPeakSysUSB.h
Go to the documentation of this file.
00001 /*
00002  * Copyright 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA)
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *   http://www.apache.org/licenses/LICENSE-2.0
00009 
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 
00018 #ifndef CANPEAKSYSUSB_INCLUDEDEF_H
00019 #define CANPEAKSYSUSB_INCLUDEDEF_H
00020 //-----------------------------------------------
00021 #include <cob_generic_can/CanItf.h>
00022 #include <libpcan/libpcan.h>
00023 #include <cob_utilities/IniFile.h>
00024 //-----------------------------------------------
00025 
00026 class CANPeakSysUSB : public CanItf
00027 {
00028 public:
00029         // --------------- Interface
00030         CANPeakSysUSB(const char* device, int baudrate);
00031         CANPeakSysUSB(const char* cIniFile);
00032         ~CANPeakSysUSB();
00033         bool init_ret();
00034         void init();
00035         void destroy() {};
00036         bool transmitMsg(CanMsg CMsg, bool bBlocking = true);
00037         bool receiveMsg(CanMsg* pCMsg);
00038         bool receiveMsgRetry(CanMsg* pCMsg, int iNrOfRetry);
00039         bool receiveMsgTimeout(CanMsg* pCMsg, int nMicroSeconds);
00040         bool isObjectMode() { return false; }
00041 
00042 private:
00043         // --------------- Types
00044         HANDLE m_handle;
00045 
00046         bool m_bInitialized;
00047         IniFile m_IniFile;
00048         bool m_bSimuEnabled;
00049         const char* p_cDevice;
00050         int m_iBaudrateVal;
00051 
00052         static const int c_iInterrupt;
00053         static const int c_iPort;
00054 
00055         bool initCAN();
00056 
00057         void outputDetailedStatus();
00058 };
00059 //-----------------------------------------------
00060 #endif
00061 


cob_generic_can
Author(s): Christian Connette
autogenerated on Sat Jun 8 2019 21:02:26