applicfg.h

Go to the documentation of this file.
00001 /*
00002 This file is part of CanFestival, a library implementing CanOpen Stack. 
00003 
00004 Copyright (C): Edouard TISSERANT and Francis DUPIN
00005 
00006 See COPYING file for copyrights details.
00007 
00008 This library is free software; you can redistribute it and/or
00009 modify it under the terms of the GNU Lesser General Public
00010 License as published by the Free Software Foundation; either
00011 version 2.1 of the License, or (at your option) any later version.
00012 
00013 This library is distributed in the hope that it will be useful,
00014 but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00016 Lesser General Public License for more details.
00017 
00018 You should have received a copy of the GNU Lesser General Public
00019 License along with this library; if not, write to the Free Software
00020 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00021 */
00022 
00023 #ifndef __APPLICFG_LINUX__
00024 #define __APPLICFG_LINUX__
00025 
00026 #include <string.h>
00027 #include <stdio.h>
00028 
00029 /*  Define the architecture : little_endian or big_endian
00030  -----------------------------------------------------
00031  Test :
00032  UNS32 v = 0x1234ABCD;
00033  char *data = &v;
00034 
00035  Result for a little_endian architecture :
00036  data[0] = 0xCD;
00037  data[1] = 0xAB;
00038  data[2] = 0x34;
00039  data[3] = 0x12;
00040 
00041  Result for a big_endian architecture :
00042  data[0] = 0x12;
00043  data[1] = 0x34;
00044  data[2] = 0xAB;
00045  data[3] = 0xCD;
00046  */
00047 
00048 /* Integers */
00049 #define INTEGER8 char
00050 #define INTEGER16 short
00051 #define INTEGER24
00052 #define INTEGER32 long
00053 #define INTEGER40
00054 #define INTEGER48
00055 #define INTEGER56
00056 #define INTEGER64
00057 
00058 /* Unsigned integers */
00059 #define UNS8   unsigned char
00060 #define UNS16  unsigned short
00061 #define UNS32  unsigned long
00062 #define UNS24
00063 #define UNS40
00064 #define UNS48
00065 #define UNS56
00066 #define UNS64 
00067 
00068 /* Reals */
00069 #define REAL32  float
00070 #define REAL64 double
00071 
00072 /* Definition of error and warning macros */
00073 /* -------------------------------------- */
00074 #if defined DEBUG_ERR_CONSOLE_ON || defined DEBUG_WAR_CONSOLE_ON
00075 #include <stdio.h>
00076 #endif
00077 
00078 /* Definition of MSG_ERR */
00079 /* --------------------- */
00080 #ifdef DEBUG_ERR_CONSOLE_ON
00081 #    define MSG_ERR(num, str, val)            \
00082           printf("%s,%d : 0X%x %s 0X%x \n",__FILE__, __LINE__,num, str, val);
00083 #else
00084 #    define MSG_ERR(num, str, val)
00085 #endif
00086 
00087 /* Definition of MSG_WAR */
00088 /* --------------------- */
00089 #ifdef DEBUG_WAR_CONSOLE_ON
00090 #    define MSG_WAR(num, str, val)          \
00091           printf("%s,%d : 0X%x %s 0X%x \n",__FILE__, __LINE__,num, str, val);
00092 #else
00093 #    define MSG_WAR(num, str, val)
00094 #endif
00095 
00096 typedef void* CAN_HANDLE;
00097 
00098 typedef void* CAN_PORT;
00099 
00100 #endif

Generated on Fri Jun 8 08:51:39 2007 for CanFestival by  doxygen 1.5.1