/* ETAK Inc. Mar 1993 */ #ifndef packing__h #define packing__h /* #ident "@(#)packing.h 1.1 :/tmp_mnt/vol/consrc/nra/ktree/s.packing.h 3/17/93 18:37:10" */ /*typedef unsigned long Long; typedef unsigned short Short; */ #ifdef sparc #define PutNRAShort(p,v) (*p = v) #define PutNRALong(p,v) (*p = v) #define GetNRAShort(p) (p) #define GetNRALong(p) (p) #else #define PutNRAShort(p,v) (*(char*)(p)=(char)((v)>>8),*((char*)(p)+1)=(char)(v)) #define GetNRAShort(p) (((p & 0xff)<<8)|((Short) (p & 0xff00)>>8)) #define PutNRATriplet(p,v) (*(char*)(p)=(char)((v)>>16),*((char*)(p)+1)=(char)((v)>>8),*((char*)(p)+2)=(char)(v)) #define GetNRATriplet(p) ( (((signed long)((signed char)p.data[0])<<16)) | (((Long)p.data[1]<<8)) | (((Long)p.data[2])) ) #define PutNRALong(p,v) (*(char*)(p)=(char)((v)>>24),*((char*)(p)+1)=(char)((v)>>16),*((char*)(p)+2)=(char)((v)>>8),*((char*)(p)+3)=(char)(v)) #define GetNRALong(p) (((p & 0xff)<<24)|((p & 0xff00)<<8)|((p & 0xff0000)>>8)|((Long) (p & 0xff000000L)>>24)) #endif /* sparc */ #endif /* packing__h */