tCanMessage.h
Go to the documentation of this file.
00001 // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
00002 
00003 // -- BEGIN LICENSE BLOCK ----------------------------------------------
00004 // This file is part of FZIs ic_workspace.
00005 //
00006 // This program is free software licensed under the LGPL
00007 // (GNU LESSER GENERAL PUBLIC LICENSE Version 3).
00008 // You can find a copy of this license in LICENSE folder in the top
00009 // directory of the source code.
00010 //
00011 // © Copyright 2016 FZI Forschungszentrum Informatik, Karlsruhe, Germany
00012 //
00013 // -- END LICENSE BLOCK ------------------------------------------------
00014 
00015 //----------------------------------------------------------------------
00025 //----------------------------------------------------------------------
00026 #ifndef _icl_hardware_can_tCanMessage_h_
00027 #define _icl_hardware_can_tCanMessage_h_
00028 
00029 #include <map>
00030 #include <boost/shared_ptr.hpp>
00031 
00032 #include <icl_core/DataHeader.h>
00033 
00034 #include "icl_hardware_can/ImportExport.h"
00035 
00036 namespace icl_hardware {
00037 namespace can {
00038 
00040 
00043 struct ICL_HARDWARE_CAN_IMPORT_EXPORT tCanMessage
00044 {
00045   unsigned id;
00046 #ifdef _IC_BUILDER_CAN_ITEC_
00047   unsigned char eff;       /* Extended frame format bit */
00048 #endif
00049   unsigned char dlc;
00050   unsigned char rtr;
00051   unsigned char data[8];
00052 #ifdef _IC_BUILDER_CAN_ITEC_
00053   struct timeval tv; /* Timestamp */
00054 #endif
00055 
00059   tCanMessage(unsigned param_id = 0,
00060               unsigned char param_dlc = 0,
00061               unsigned char param_rtr = 0,
00062               const unsigned char* param_data = 0);
00063 
00067   tCanMessage(const tCanMessage &other);
00068 
00072   tCanMessage& operator = (const tCanMessage &other);
00073 
00074 };
00075 
00079 typedef icl_core::Stamped<tCanMessage> CanMessageStamped;
00081 typedef std::map<unsigned, CanMessageStamped> CanMessageMap;
00083 typedef boost::shared_ptr<CanMessageMap> CanMessageMapPtr;
00085 typedef boost::shared_ptr<const CanMessageMap> CanMessageMapConstPtr;
00086 
00087 }
00088 }
00089 
00090 #endif


fzi_icl_can
Author(s):
autogenerated on Thu Jun 6 2019 20:26:01