This file defines common datatypes used throughout psLib.
Ross Harman, MHPCC
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... | |
1.4.2