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

Data Containers

Collaboration diagram for Data Containers:


Files

file  psType.h
 Contains support for basic types.

Modules

 Linked List
 Hash Table
 Scalar
 Vector Container
 Array Container
 Image Container
 Bit Set Container

Data Structures

struct  psType
 The type of a data type. More...
struct  psMath
 The type of a basic data type. More...

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
 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 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
}
enum  psDimen { PS_DIMEN_SCALAR, PS_DIMEN_VECTOR, PS_DIMEN_TRANSV, PS_DIMEN_IMAGE, PS_DIMEN_OTHER }
 Dimensions of a data type. More...


Define Documentation

#define PS_BADPIXEL_BITMASK   0x0f
 

Macro to get the bad pixel reason code (stored as part of mask value).

Definition at line 181 of file psType.h.

#define PS_GET_BADPIXEL maskValue   )     (maskValue & PS_BADPIXEL_BITMASK)
 

Definition at line 182 of file psType.h.

#define PS_IS_BADPIXEL maskValue   )     (PS_GET_BADPIXEL(maskValue) != 0)
 

Definition at line 184 of file psType.h.

#define PS_IS_PSELEMTYPE_BOOL  )     ((x & 0x1000) == 0x1000)
 

Macro to determine if the psElemType is boolean type.

Definition at line 201 of file psType.h.

#define PS_IS_PSELEMTYPE_COMPLEX  )     ((x & 0x800) == 0x800)
 

Macro to determine if the psElemType is complex number type.

Definition at line 199 of file psType.h.

#define PS_IS_PSELEMTYPE_INT  )     ((x & 0x100) == 0x100)
 

Macro to determine if the psElemType is an integer.

Definition at line 193 of file psType.h.

#define PS_IS_PSELEMTYPE_REAL  )     ((x & 0x400) == 0x400)
 

Macro to determine if the psElemType is a real (non-complex) floating-point type.

Definition at line 197 of file psType.h.

#define PS_IS_PSELEMTYPE_UNSIGNED  )     ((x & 0x200) == 0x200)
 

Macro to determine if the psElemType is unsigned.

Definition at line 195 of file psType.h.

#define PS_MAX_C32   FLT_MAX
 

maximum valid real or imaginary psC32 value

Definition at line 118 of file psType.h.

#define PS_MAX_C64   DBL_MAX
 

maximum valid real or imaginary psC32 value

Definition at line 119 of file psType.h.

#define PS_MAX_F32   FLT_MAX
 

maximum valid psF32 value

Definition at line 116 of file psType.h.

#define PS_MAX_F64   DBL_MAX
 

maximum valid psF64 value

Definition at line 117 of file psType.h.

#define PS_MAX_S16   INT16_MAX
 

maximum valid psS16 value

Definition at line 109 of file psType.h.

#define PS_MAX_S32   INT32_MAX
 

maximum valid psS32 value

Definition at line 110 of file psType.h.

#define PS_MAX_S64   INT64_MAX
 

maximum valid psS64 value

Definition at line 111 of file psType.h.

#define PS_MAX_S8   INT8_MAX
 

maximum valid psS8 value

Definition at line 108 of file psType.h.

#define PS_MAX_U16   UINT16_MAX
 

maximum valid psU16 value

Definition at line 113 of file psType.h.

#define PS_MAX_U32   UINT32_MAX
 

maximum valid psU32 value

Definition at line 114 of file psType.h.

#define PS_MAX_U64   UINT64_MAX
 

maximum valid psU64 value

Definition at line 115 of file psType.h.

#define PS_MAX_U8   UINT8_MAX
 

maximum valid psU8 value

Definition at line 112 of file psType.h.

#define PS_MIN_C32   -FLT_MAX
 

minimum valid real or imaginary psC32 value

Definition at line 105 of file psType.h.

#define PS_MIN_C64   -DBL_MAX
 

minimum valid real or imaginary psC32 value

Definition at line 106 of file psType.h.

#define PS_MIN_F32   -FLT_MAX
 

minimum valid psF32 value

Definition at line 103 of file psType.h.

#define PS_MIN_F64   -DBL_MAX
 

minimum valid psF64 value

Definition at line 104 of file psType.h.

#define PS_MIN_S16   INT16_MIN
 

minimum valid psS16 value

Definition at line 96 of file psType.h.

#define PS_MIN_S32   INT32_MIN
 

minimum valid psS32 value

Definition at line 97 of file psType.h.

#define PS_MIN_S64   INT64_MIN
 

minimum valid psS64 value

Definition at line 98 of file psType.h.

#define PS_MIN_S8   INT8_MIN
 

minimum valid psS8 value

Definition at line 95 of file psType.h.

#define PS_MIN_U16   0
 

minimum valid psU16 value

Definition at line 100 of file psType.h.

#define PS_MIN_U32   0
 

minimum valid psU32 value

Definition at line 101 of file psType.h.

#define PS_MIN_U64   0
 

minimum valid psU64 value

Definition at line 102 of file psType.h.

#define PS_MIN_U8   0
 

minimum valid psU8 value

Definition at line 99 of file psType.h.

#define PS_SET_BADPIXEL maskValue,
reasonCode   ) 
 

Value:

{ \
    maskValue = (psMaskType)((reasonCode & PS_BADPIXEL_BITMASK) | (maskValue & ~PS_BADPIXEL_BITMASK)); \
}
Macro to apply a bad pixel reason code to mask image.

Definition at line 187 of file psType.h.

#define PS_TYPE_BOOL_NAME   "psBool"
 

Definition at line 121 of file psType.h.

#define PS_TYPE_C32_NAME   "psC32"
 

Definition at line 132 of file psType.h.

#define PS_TYPE_C64_NAME   "psC64"
 

Definition at line 133 of file psType.h.

#define PS_TYPE_F32_NAME   "psF32"
 

Definition at line 130 of file psType.h.

#define PS_TYPE_F64_NAME   "psF64"
 

Definition at line 131 of file psType.h.

#define PS_TYPE_MASK   PS_TYPE_U8
 

the psElemType to use for mask image

Definition at line 88 of file psType.h.

#define PS_TYPE_MASK_DATA   U8
 

the data member to use for mask image

Definition at line 89 of file psType.h.

#define PS_TYPE_MASK_NAME   "psU8"
 

the data type for mask as a string

Definition at line 90 of file psType.h.

#define PS_TYPE_NAME value,
type   ) 
 

Definition at line 135 of file psType.h.

#define PS_TYPE_S16_NAME   "psS16"
 

Definition at line 123 of file psType.h.

#define PS_TYPE_S32_NAME   "psS32"
 

Definition at line 124 of file psType.h.

#define PS_TYPE_S64_NAME   "psS64"
 

Definition at line 125 of file psType.h.

#define PS_TYPE_S8_NAME   "psS8"
 

Definition at line 122 of file psType.h.

#define PS_TYPE_U16_NAME   "psU16"
 

Definition at line 127 of file psType.h.

#define PS_TYPE_U32_NAME   "psU32"
 

Definition at line 128 of file psType.h.

#define PS_TYPE_U64_NAME   "psU64"
 

Definition at line 129 of file psType.h.

#define PS_TYPE_U8_NAME   "psU8"
 

Definition at line 126 of file psType.h.

#define PSELEMTYPE_SIZEOF  )     (x & 0xFF)
 

Macro to determine the storage size, in bytes, of the psElemType.

Definition at line 203 of file psType.h.


Typedef Documentation

typedef psBool psBOOL
 

allow psBOOL to be used instead of psBool (for macros)

Definition at line 93 of file psType.h.

typedef bool psBool
 

boolean value

Definition at line 70 of file psType.h.

typedef float _Complex psC32
 

complex with 32-bit floating point Real and Imagary numbers

Definition at line 65 of file psType.h.

typedef double _Complex psC64
 

complex with 64-bit floating point Real and Imagary numbers

Definition at line 66 of file psType.h.

typedef float psF32
 

32-bit floating point

Definition at line 50 of file psType.h.

typedef double psF64
 

64-bit floating point

Definition at line 51 of file psType.h.

typedef psU8 psMaskType
 

the C datatype for a mask image

Definition at line 92 of file psType.h.

typedef void* psPtr
 

void pointer

Definition at line 69 of file psType.h.

typedef int16_t psS16
 

16-bit signed int

Definition at line 47 of file psType.h.

typedef int32_t psS32
 

32-bit signed int

Definition at line 48 of file psType.h.

typedef int64_t psS64
 

64-bit signed int

Definition at line 49 of file psType.h.

typedef int8_t psS8
 

8-bit signed int

Definition at line 46 of file psType.h.

typedef uint16_t psU16
 

16-bit unsigned int

Definition at line 43 of file psType.h.

typedef uint32_t psU32
 

32-bit unsigned int

Definition at line 44 of file psType.h.

typedef uint64_t psU64
 

64-bit unsigned int

Definition at line 45 of file psType.h.

typedef uint8_t psU8
 

8-bit unsigned int

The basic types of the primitives used by psLib are defined within this enum. This enum is in turn used by the psType struct.

Definition at line 42 of file psType.h.


Enumeration Type Documentation

enum psDimen
 

Dimensions of a data type.

The dimensions of containers used by psLib are defined within this enum. This enum is used by the psType struct. *

Enumeration values:
PS_DIMEN_SCALAR  Scalar.
PS_DIMEN_VECTOR  Vector.
PS_DIMEN_TRANSV  Transposed vector.
PS_DIMEN_IMAGE  Image.
PS_DIMEN_OTHER  Something else that's not supported for arithmetic.

Definition at line 210 of file psType.h.

enum psElemType
 

Enumeration values:
PS_TYPE_S8  Character.
PS_TYPE_S16  Short integer.
PS_TYPE_S32  Integer.
PS_TYPE_S64  Long integer.
PS_TYPE_U8  Unsigned character.
PS_TYPE_U16  Unsigned psS16 integer.
PS_TYPE_U32  Unsigned integer.
PS_TYPE_U64  Unsigned psS64 integer.
PS_TYPE_F32  Single-precision Floating point.
PS_TYPE_F64  Double-precision floating point.
PS_TYPE_C32  Complex numbers consisting of single-precision floating point.
PS_TYPE_C64  Complex numbers consisting of double-precision floating point.
PS_TYPE_BOOL  Boolean.

Definition at line 72 of file psType.h.


Generated on Wed Jun 15 11:01:14 2005 for Pan-STARRS Foundation Library by  doxygen 1.4.1