HEASP uses the include file “heasp.h” to set a number of global definitions.
typedef int Integer; typedef double Real;
set Integer and Real which are used in all classes. It also sets a couple of helpful definitions.
typedef vector<Integer> IntegerArray; typedef valarray<Real> RealArray;
This include file also contains the enumeration all error statuses.
enum{OK, NoSuchFile, NoData, NoChannelData, NoStatError, CannotCreate, NoEnergLo, NoEnergHi, NoSpecresp, NoEboundsExt, NoEmin, NoEmax, NoMatrixExt, NoNgrp, NoFchan, NoNchan, NoMatrix, CannotCreateMatrixExt, CannotCreateEboundsExt, InconsistentGrouping, InconsistentEnergies, InconsistentChannels, InconsistentUnits, UnknownXUnits, UnknownYUnits, InconsistentNumelt, InconsistentNumgrp, InconsistentNumTableParams, TableParamValueOutsideRange, VectorIndexOutsideRange, InconsistentKeywordValues, CannotCopyColumn, CannotWriteMatrix, InconsistentTableFilter, NoChannels, InconsistentChannelMin, InconsistentFChan, InconsistentNChan};
It also has some handy conversion factors.
#define KEVTOA 12.3984191 #define KEVTOHZ 2.4179884076620228e17 #define KEVTOERG 1.60217733e-9 #define KEVTOJY 1.60217733e14