Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

processor.h

00001 /************************************************************************************
00002  * processor.h
00003  *
00004  *  synopsis: Sets some parameters and typedefs which may be processor dependant.  The
00005  *           processor type should be defined globally, e.g. via a -d or -D compiler
00006  *           option.
00007  *
00008  *  Damon Fasching, UW Madison (510)486-5230               fasching@wisconsin.cern.ch
00009  ************************************************************************************/
00010 #ifndef PROCESSOR_SET
00011 #define PROCESSOR_SET
00012 
00013 #if (defined(I_AM_NT_HOST) || defined(I_AM_LINUX_HOST))
00014    #define I_AM_HOST
00015 #endif
00016 
00017 /* macros */
00018 #define SIZEOF(x) (sizeof(x) >> 2) /* sizeof is in bytes, SIZEOF is in 32 bit words */
00019 
00020 /* typedef the fundamental data types.
00021  * some of these are already defined in TI's stdinc.h, new with CCS v1.20 */
00022 #ifndef _STDINC_H_
00023 
00024 /* VME host data types */
00025 #if (defined(I_AM_HOST))
00026     typedef short          INT16;
00027     typedef int            INT32;
00028     typedef unsigned char  UINT8;
00029     typedef unsigned short UINT16;
00030     typedef unsigned int   UINT32;
00031     typedef float          FLOAT32;
00032     typedef double         FLOAT64;
00033 
00034     typedef  int            int32;
00035     typedef  unsigned int   uint32;
00036     typedef  unsigned short uint16;
00037     typedef  unsigned char  uint8;
00038 #endif
00039 
00040 #ifdef I_AM_SLAVE_DSP                       /* slave DSP (TMS320C6701) data types */
00041     typedef char           INT8;
00042     typedef short          INT16;
00043     typedef int            INT32;
00044     typedef long           INT40;
00045     typedef unsigned char  UINT8;
00046     typedef unsigned short UINT16;
00047     typedef unsigned int   UINT32;
00048     typedef unsigned long  UINT40;
00049     typedef float          FLOAT32;
00050     typedef double         FLOAT64;
00051 
00052     typedef  int            int32;
00053     typedef  unsigned int   uint32;
00054     typedef  unsigned short uint16;
00055     typedef  unsigned char  uint8;
00056 #endif
00057 
00058 #ifdef I_AM_MASTER_DSP                      /* master DSP (TMS320C6201) data types */
00059     typedef char           INT8;
00060     typedef short          INT16;
00061     typedef int            INT32;
00062     typedef long           INT40;
00063     typedef unsigned char  UINT8;
00064     typedef unsigned short UINT16;
00065     typedef unsigned int   UINT32;
00066     typedef unsigned long  UINT40;
00067     typedef float          FLOAT32;
00068     typedef double         FLOAT64;
00069 
00070     typedef  int            int32;
00071     typedef  unsigned int   uint32;
00072     typedef  unsigned short uint16;
00073     typedef  unsigned char  uint8;
00074 #endif
00075 
00076 /* other variables seemed to have escaped stdinc.h... */
00077 #else
00078     #if (!defined(I_AM_HOST))
00079         typedef float          FLOAT32;
00080         typedef double         FLOAT64;
00081     #endif
00082 #endif  /* stdinc.h*/
00083 
00084 #if   defined(SCT_ROD)
00085     typedef FLOAT32        MDAT32;
00086 #elif defined(PIXEL_ROD)
00087     typedef UINT32         MDAT32;
00088 #endif
00089 
00090 
00091 
00092 #endif  /* PROCESSOR_SET */

Generated on Fri Dec 16 19:38:15 2005 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5