Internal SFT types and functions. More...
Prototypes | |
REAL8 | TSFTfromDFreq (REAL8 dFreq) |
int | compareSFTdesc (const void *ptr1, const void *ptr2) |
int | compareSFTloc (const void *ptr1, const void *ptr2) |
int | compareDetNameCatalogs (const void *ptr1, const void *ptr2) |
int | compareSFTepoch (const void *ptr1, const void *ptr2) |
int | build_sft_windowspec (UINT2 *windowspec, CHAR(*windowspec_str)[9], const char *window_type, REAL8 window_param) |
Build an SFT 2-byte 'windowspec' or filename field 'windowspec_str' for the window given by 'window_type' and 'window_param'. More... | |
int | parse_sft_windowspec (const UINT2 windowspec, const char **window_type, REAL8 *window_param) |
Parse an SFT 2-byte 'windowspec' into a window name 'window_type' and possible parameter 'window_param'. More... | |
int | parse_sft_windowspec_str (const CHAR *windowspec_str, CHAR(*window_type)[32], REAL8 *window_param) |
Parse an SFT filename field 'windowspec_str' into a window name 'window_type' and possible parameter 'window_param'. More... | |
void | endian_swap (CHAR *pdata, size_t dsize, size_t nelements) |
FILE * | fopen_SFTLocator (const struct tagSFTLocator *locator) |
Open an "SFT" defined by the SFT-locator, return a FILE-pointer to the beginning of this SFT. More... | |
int | read_SFTversion_from_fp (UINT4 *version, BOOLEAN *need_swap, FILE *fp) |
Read valid SFT version-number at position fp, and determine if we need to endian-swap the data. More... | |
int | read_sft_header_from_fp (FILE *fp, SFTtype *header, UINT4 *version, UINT8 *crc64, UINT2 *SFTwindowspec, BOOLEAN *swapEndian, CHAR **SFTcomment, UINT4 *numBins) |
UINT4 | read_sft_bins_from_fp (SFTtype *ret, UINT4 *firstBinRead, UINT4 firstBin2read, UINT4 lastBin2read, FILE *fp) |
BOOLEAN | has_valid_crc64 (FILE *fp) |
Check the SFT-block starting at fp for valid crc64 checksum. More... | |
unsigned long long | crc64 (const unsigned char *data, unsigned int length, unsigned long long crc) |
Internal SFT types and functions.
Definition in file SFTinternal.h.
Go to the source code of this file.
Data Structures | |
struct | tagSFTLocator |
Macros | |
#define | TRUE 1 |
#define | FALSE 0 |
#define | SFTFILEIO_REALLOC_BLOCKSIZE 100 |
size of blocks allocated for SFT data. More... | |
#define | GPS2REAL8(gps) (1.0 * (gps).gpsSeconds + 1.e-9 * (gps).gpsNanoSeconds ) |
#define | GPSEQUAL(gps1, gps2) (((gps1).gpsSeconds == (gps2).gpsSeconds) && ((gps1).gpsNanoSeconds == (gps2).gpsNanoSeconds)) |
#define | GPSZERO(gps) (((gps).gpsSeconds == 0) && ((gps).gpsNanoSeconds == 0)) |
SFT versions | |
| |
#define | MIN_SFT_VERSION 2 |
#define | MAX_SFT_VERSION 3 |
Variables | |
static const REAL8 | fudge_up = 1 + 10 * LAL_REAL8_EPS |
static const REAL8 | fudge_down = 1 - 10 * LAL_REAL8_EPS |
#define MIN_SFT_VERSION 2 |
Definition at line 53 of file SFTinternal.h.
#define MAX_SFT_VERSION 3 |
Definition at line 54 of file SFTinternal.h.
#define TRUE 1 |
Definition at line 60 of file SFTinternal.h.
#define FALSE 0 |
Definition at line 61 of file SFTinternal.h.
#define SFTFILEIO_REALLOC_BLOCKSIZE 100 |
size of blocks allocated for SFT data.
For Einstein@home SFTs this should be set to 8000 (externally)
Definition at line 68 of file SFTinternal.h.
#define GPS2REAL8 | ( | gps | ) | (1.0 * (gps).gpsSeconds + 1.e-9 * (gps).gpsNanoSeconds ) |
Definition at line 79 of file SFTinternal.h.
#define GPSEQUAL | ( | gps1, | |
gps2 | |||
) | (((gps1).gpsSeconds == (gps2).gpsSeconds) && ((gps1).gpsNanoSeconds == (gps2).gpsNanoSeconds)) |
Definition at line 80 of file SFTinternal.h.
#define GPSZERO | ( | gps | ) | (((gps).gpsSeconds == 0) && ((gps).gpsNanoSeconds == 0)) |
Definition at line 81 of file SFTinternal.h.
unsigned long long crc64 | ( | const unsigned char * | data, |
unsigned int | length, | ||
unsigned long long | crc | ||
) |
Definition at line 61 of file SFTReferenceLibrary.c.
|
static |
Definition at line 63 of file SFTinternal.h.
|
static |
Definition at line 64 of file SFTinternal.h.