Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

psType.h File Reference


Detailed Description

Contains support for basic types.

This file defines common datatypes used throughout psLib.

Author:
Robert DeSonia, MHPCC

Ross Harman, MHPCC

Version:
Revision
1.39
Name
rel7
Date:
Date
2005/08/31 02:07:11
Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii

Definition in file psType.h.

#include <complex.h>
#include <stdint.h>
#include <float.h>
#include <stdbool.h>

Include dependency graph for psType.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define PS_TYPE_MASK   PS_TYPE_U8
 the psElemType to use for mask image
#define PS_TYPE_MASK_DATA   U8
 the data member to use for mask image
#define PS_TYPE_MASK_NAME   "psU8"
 the data type for mask as a string
#define PS_MIN_S8   INT8_MIN
 minimum valid psS8 value
#define PS_MIN_S16   INT16_MIN
 minimum valid psS16 value
#define PS_MIN_S32   INT32_MIN
 minimum valid psS32 value
#define PS_MIN_S64   INT64_MIN
 minimum valid psS64 value
#define PS_MIN_U8   0
 minimum valid psU8 value
#define PS_MIN_U16   0
 minimum valid psU16 value
#define PS_MIN_U32   0
 minimum valid psU32 value
#define PS_MIN_U64   0
 minimum valid psU64 value
#define PS_MIN_F32   -FLT_MAX
 minimum valid psF32 value
#define PS_MIN_F64   -DBL_MAX
 minimum valid psF64 value
#define PS_MIN_C32   -FLT_MAX
 minimum valid real or imaginary psC32 value
#define PS_MIN_C64   -DBL_MAX
 minimum valid real or imaginary psC32 value
#define PS_MAX_S8   INT8_MAX
 maximum valid psS8 value
#define PS_MAX_S16   INT16_MAX
 maximum valid psS16 value
#define PS_MAX_S32   INT32_MAX
 maximum valid psS32 value
#define PS_MAX_S64   INT64_MAX
 maximum valid psS64 value
#define PS_MAX_U8   UINT8_MAX
 maximum valid psU8 value
#define PS_MAX_U16   UINT16_MAX
 maximum valid psU16 value
#define PS_MAX_U32   UINT32_MAX
 maximum valid psU32 value
#define PS_MAX_U64   UINT64_MAX
 maximum valid psU64 value
#define PS_MAX_F32   FLT_MAX
 maximum valid psF32 value
#define PS_MAX_F64   DBL_MAX
 maximum valid psF64 value
#define PS_MAX_C32   FLT_MAX
 maximum valid real or imaginary psC32 value
#define PS_MAX_C64   DBL_MAX
 maximum valid real or imaginary psC32 value
#define PS_TYPE_BOOL_NAME   "psBool"
#define PS_TYPE_S8_NAME   "psS8"
#define PS_TYPE_S16_NAME   "psS16"
#define PS_TYPE_S32_NAME   "psS32"
#define PS_TYPE_S64_NAME   "psS64"
#define PS_TYPE_U8_NAME   "psU8"
#define PS_TYPE_U16_NAME   "psU16"
#define PS_TYPE_U32_NAME   "psU32"
#define PS_TYPE_U64_NAME   "psU64"
#define PS_TYPE_F32_NAME   "psF32"
#define PS_TYPE_F64_NAME   "psF64"
#define PS_TYPE_C32_NAME   "psC32"
#define PS_TYPE_C64_NAME   "psC64"
#define PS_TYPE_NAME(value, type)
#define PS_BADPIXEL_BITMASK   0x0f
 Macro to get the bad pixel reason code (stored as part of mask value).
#define PS_GET_BADPIXEL(maskValue)   (maskValue & PS_BADPIXEL_BITMASK)
#define PS_IS_BADPIXEL(maskValue)   (PS_GET_BADPIXEL(maskValue) != 0)
#define PS_SET_BADPIXEL(maskValue, reasonCode)
 Macro to apply a bad pixel reason code to mask image.
#define PS_IS_PSELEMTYPE_INT(x)   ((x & 0x100) == 0x100)
 Macro to determine if the psElemType is an integer.
#define PS_IS_PSELEMTYPE_UNSIGNED(x)   ((x & 0x200) == 0x200)
 Macro to determine if the psElemType is unsigned.
#define PS_IS_PSELEMTYPE_REAL(x)   ((x & 0x400) == 0x400)
 Macro to determine if the psElemType is a real (non-complex) floating-point type.
#define PS_IS_PSELEMTYPE_COMPLEX(x)   ((x & 0x800) == 0x800)
 Macro to determine if the psElemType is complex number type.
#define PS_IS_PSELEMTYPE_BOOL(x)   ((x & 0x1000) == 0x1000)
 Macro to determine if the psElemType is boolean type.
#define PSELEMTYPE_SIZEOF(x)   (x & 0xFF)
 Macro to determine the storage size, in bytes, of the psElemType.

Typedefs

typedef uint8_t psU8
 Basic data types used by the containers. 8-bit unsigned int.
typedef uint16_t psU16
 16-bit unsigned int
typedef uint32_t psU32
 32-bit unsigned int
typedef uint64_t psU64
 64-bit unsigned int
typedef int8_t psS8
 8-bit signed int
typedef int16_t psS16
 16-bit signed int
typedef int32_t psS32
 32-bit signed int
typedef int64_t psS64
 64-bit signed int
typedef float psF32
 32-bit floating point
typedef double psF64
 64-bit floating point
typedef float _Complex psC32
 complex with 32-bit floating point Real and Imagary numbers
typedef double _Complex psC64
 complex with 64-bit floating point Real and Imagary numbers
typedef char * psString
 string value
typedef void * psPtr
 void pointer
typedef bool psBool
 boolean value
typedef psU8 psMaskType
 the C datatype for a mask image
typedef psBool psBOOL
 allow psBOOL to be used instead of psBool (for macros)

Enumerations

enum  psElemType {
  PS_TYPE_S8 = 0x0101, PS_TYPE_S16 = 0x0102, PS_TYPE_S32 = 0x0104, PS_TYPE_S64 = 0x0108, PS_TYPE_U8 = 0x0301, PS_TYPE_U16 = 0x0302, PS_TYPE_U32 = 0x0304, PS_TYPE_U64 = 0x0308, PS_TYPE_F32 = 0x0404, PS_TYPE_F64 = 0x0408,
  PS_TYPE_C32 = 0x0808, PS_TYPE_C64 = 0x0810, PS_TYPE_BOOL = 0x1301
}
 Enumeration of data types for function elements. More...
enum  psDataType {
  PS_DATA_S32 = PS_TYPE_S32, PS_DATA_F32 = PS_TYPE_F32, PS_DATA_F64 = PS_TYPE_F64, PS_DATA_BOOL = PS_TYPE_BOOL, PS_DATA_STRING = 0x10000, PS_DATA_ARRAY, PS_DATA_BITSET, PS_DATA_CELL, PS_DATA_CHIP, PS_DATA_CUBE,
  PS_DATA_FITS, PS_DATA_HASH, PS_DATA_HISTOGRAM, PS_DATA_IMAGE, PS_DATA_KERNEL, PS_DATA_LIST, PS_DATA_LOOKUPTABLE, PS_DATA_METADATA, PS_DATA_METADATAITEM, PS_DATA_MINIMIZATION,
  PS_DATA_PIXELS, PS_DATA_PLANE, PS_DATA_PLANEDISTORT, PS_DATA_PLANETRANSFORM, PS_DATA_POLYNOMIAL1D, PS_DATA_POLYNOMIAL2D, PS_DATA_POLYNOMIAL3D, PS_DATA_POLYNOMIAL4D, PS_DATA_PROJECTION, PS_DATA_READOUT,
  PS_DATA_REGION, PS_DATA_SCALAR, PS_DATA_SPHERE, PS_DATA_SPHEREROT, PS_DATA_SPLINE1D, PS_DATA_STATS, PS_DATA_TIME, PS_DATA_VECTOR, PS_DATA_UNKNOWN, PS_DATA_METADATA_MULTI
}
 Enumeration primarily used with metadata which defines a data structure e.g. More...
enum  psDimen { PS_DIMEN_SCALAR, PS_DIMEN_VECTOR, PS_DIMEN_TRANSV, PS_DIMEN_IMAGE, PS_DIMEN_OTHER }
 Dimensions of a data type. More...


Generated on Wed Sep 14 10:43:35 2005 for Pan-STARRS Foundation Library by  doxygen 1.4.2