Prototypes | |
Time range/frequency bin convention functions | |
int | XLALCWGPSinRange (const LIGOTimeGPS gps, const LIGOTimeGPS *minGPS, const LIGOTimeGPS *maxGPS) |
Defines the official CW convention for whether a GPS time is 'within' a given range, defined as the half-open interval [minGPS, maxGPS) More... | |
UINT4 | XLALRoundFrequencyDownToSFTBin (const REAL8 freq, const REAL8 df) |
Round a REAL8 frequency down to the nearest integer SFT bin number. More... | |
UINT4 | XLALRoundFrequencyUpToSFTBin (const REAL8 freq, const REAL8 df) |
Round a REAL8 frequency up to the nearest integer SFT bin number. More... | |
int | XLALFindCoveringSFTBins (UINT4 *firstBin, UINT4 *numBins, REAL8 fMinIn, REAL8 BandIn, REAL8 Tsft) |
Return the 'effective' frequency-band [fMinEff, fMaxEff] = [firstBin, lastBin] * 1/Tsft, with numBins = lastBin - firstBin + 1 which is the smallest band of SFT-bins that fully covers a given band [fMin, fMin+Band]. More... | |
SFT type create/destroy functions | |
SFTtype * | XLALCreateSFT (UINT4 numBins) |
XLAL function to create one SFT-struct. More... | |
void | XLALDestroySFT (SFTtype *sft) |
Destructor for one SFT. More... | |
int | XLALCopySFT (SFTtype *dest, const SFTtype *src) |
Copy an entire SFT-type into another. More... | |
SFTVector * | XLALCreateSFTVector (UINT4 numSFTs, UINT4 numBins) |
XLAL function to create an SFTVector of numSFT SFTs with SFTlen frequency-bins (which will be allocated too). More... | |
SFTVector * | XLALCreateEmptySFTVector (UINT4 numSFTs) |
XLAL function to create an SFTVector of numSFT SFTs (which are not allocated). More... | |
void | XLALDestroySFTVector (SFTVector *vect) |
XLAL interface to destroy an SFTVector. More... | |
SFTVector * | XLALDuplicateSFTVector (const SFTVector *sftsIn) |
Create a complete copy of an SFT vector. More... | |
MultiSFTVector * | XLALCreateMultiSFTVector (UINT4 length, UINT4Vector *numsft) |
Create a multi-IFO SFT vector with a given number of bins per SFT and number of SFTs per IFO (which will be allocated too). More... | |
MultiSFTVector * | XLALCreateEmptyMultiSFTVector (UINT4Vector *numsft) |
Create an empty multi-IFO SFT vector with a given number of SFTs per IFO (which are not allocated). More... | |
void | XLALDestroyMultiSFTVector (MultiSFTVector *multvect) |
Destroy a multi SFT-vector. More... | |
int | XLALExtractBandFromSFT (SFTtype **outSFT, const SFTtype *inSFT, REAL8 fMin, REAL8 Band) |
Return an SFTs containing only the bins in [fMin, fMin+Band]. More... | |
SFTVector * | XLALExtractBandFromSFTVector (const SFTVector *inSFTs, REAL8 fMin, REAL8 Band) |
Return a vector of SFTs containing only the bins in [fMin, fMin+Band]. More... | |
MultiSFTVector * | XLALExtractBandFromMultiSFTVector (const MultiSFTVector *inSFTs, REAL8 fMin, REAL8 Band) |
Return a MultiSFT vector containing only the bins in [fMin, fMin+Band]. More... | |
int | XLALExtractStrictBandFromSFT (SFTtype **outSFT, const SFTtype *inSFT, REAL8 fMin, REAL8 Band) |
Return a copy of an SFT containing only the bins in [fMin, fMin+Band). More... | |
SFTVector * | XLALExtractStrictBandFromSFTVector (const SFTVector *inSFTs, REAL8 fMin, REAL8 Band) |
Return a copy of a vector of SFTs containing only the bins in [fMin, fMin+Band). More... | |
MultiSFTVector * | XLALExtractStrictBandFromMultiSFTVector (const MultiSFTVector *inSFTs, REAL8 fMin, REAL8 Band) |
Return a copy of a MultiSFT vector containing only the bins in [fMin, fMin+Band). More... | |
SFT type modify functions | |
int | XLALAppendSFT2Vector (SFTVector *vect, const SFTtype *sft) |
Append the given SFTtype to the SFT-vector (no SFT-specific checks are done!) More... | |
int | XLALReorderMultiSFTVector (MultiSFTVector *multiSFTs, const LALStringVector *IFOs) |
Reorder the MultiSFTVector with specified list of IFOs. More... | |
int | XLALSFTAdd (SFTtype *a, const SFTtype *b) |
Adds SFT-data from SFT 'b' to SFT 'a'. More... | |
int | XLALSFTVectorAdd (SFTVector *a, const SFTVector *b) |
Adds SFT-data from SFTvector 'b' to elements of SFTVector 'a'. More... | |
int | XLALMultiSFTVectorAdd (MultiSFTVector *a, const MultiSFTVector *b) |
Adds SFT-data from MultiSFTvector 'b' to elements of MultiSFTVector 'a'. More... | |
int | XLALSFTResizeBand (SFTtype *SFT, REAL8 f0, REAL8 Band) |
Resize the frequency-band of a given SFT to [f0, f0+Band]. More... | |
int | XLALSFTVectorResizeBand (SFTVector *SFTs, REAL8 f0, REAL8 Band) |
Resize the frequency-band of a given SFT vector to [f0, f0+Band]. More... | |
int | XLALMultiSFTVectorResizeBand (MultiSFTVector *multiSFTs, REAL8 f0, REAL8 Band) |
Resize the frequency-band of a given multi-SFT vector to [f0, f0+Band]. More... | |
SFT type property functions | |
int | XLALEarliestMultiSFTsample (LIGOTimeGPS *out, const MultiSFTVector *multisfts) |
Finds the earliest timestamp in a multi-SFT data structure. More... | |
int | XLALLatestMultiSFTsample (LIGOTimeGPS *out, const MultiSFTVector *multisfts) |
Find the time of the end of the latest SFT in a multi-SFT data structure. More... | |
SFTVector * | XLALExtractSFTVectorWithTimestamps (const SFTVector *sfts, const LIGOTimeGPSVector *timestamps) |
Extract an SFTVector from another SFTVector but only those timestamps matching. More... | |
MultiSFTVector * | XLALExtractMultiSFTVectorWithMultiTimestamps (const MultiSFTVector *multiSFTs, const MultiLIGOTimeGPSVector *multiTimestamps) |
Extract a MultiSFTVector from another MultiSFTVector but only those timestamps matching. More... | |
SFT timestamp type create/destroy functions | |
LIGOTimeGPSVector * | XLALCreateTimestampVector (UINT4 length) |
Allocate a LIGOTimeGPSVector. More... | |
void | XLALDestroyTimestampVector (LIGOTimeGPSVector *vect) |
De-allocate a LIGOTimeGPSVector. More... | |
LIGOTimeGPSVector * | XLALResizeTimestampVector (LIGOTimeGPSVector *vector, UINT4 length) |
Resize a LIGOTimeGPSVector. More... | |
MultiLIGOTimeGPSVector * | XLALCreateMultiLIGOTimeGPSVector (UINT4 numDetectors) |
Simple creator function for MultiLIGOTimeGPSVector with numDetectors entries. More... | |
void | XLALDestroyMultiTimestamps (MultiLIGOTimeGPSVector *multiTS) |
Destroy a MultiLIGOTimeGPSVector timestamps vector. More... | |
SFT timestamp type property functions | |
int | XLALFindTimesliceBounds (UINT4 *iStart, UINT4 *iEnd, const LIGOTimeGPSVector *timestamps, const LIGOTimeGPS *minStartGPS, const LIGOTimeGPS *maxStartGPS) |
SFT timestamp generation functions | |
LIGOTimeGPSVector * | XLALMakeTimestamps (LIGOTimeGPS tStart, REAL8 Tspan, REAL8 Tsft, REAL8 Toverlap) |
Given a start-time, Tspan, Tsft and Toverlap, returns a list of timestamps covering this time-stretch (allowing for overlapping SFTs). More... | |
MultiLIGOTimeGPSVector * | XLALMakeMultiTimestamps (LIGOTimeGPS tStart, REAL8 Tspan, REAL8 Tsft, REAL8 Toverlap, UINT4 numDet) |
Same as XLALMakeTimestamps() just for several detectors, additionally specify the number of detectors. More... | |
LIGOTimeGPSVector * | XLALReadTimestampsFile (const CHAR *fname) |
backwards compatible wrapper to XLALReadTimestampsFileConstrained() without GPS-time constraints More... | |
MultiLIGOTimeGPSVector * | XLALReadMultiTimestampsFiles (const LALStringVector *fnames) |
backwards compatible wrapper to XLALReadMultiTimestampsFilesConstrained() without GPS-time constraints More... | |
LIGOTimeGPSVector * | XLALReadTimestampsFileConstrained (const CHAR *fname, const LIGOTimeGPS *minGPS, const LIGOTimeGPS *maxGPS) |
Load timestamps file 'fname' into LIGOTimeGPSVector struct, allocated here. More... | |
MultiLIGOTimeGPSVector * | XLALReadMultiTimestampsFilesConstrained (const LALStringVector *fnames, const LIGOTimeGPS *minGPS, const LIGOTimeGPS *maxGPS) |
Load several timestamps files, return a MultiLIGOTimeGPSVector struct, allocated here. More... | |
LIGOTimeGPSVector * | XLALExtractTimestampsFromSFTs (const SFTVector *sfts) |
Extract timstamps-vector from the given SFTVector. More... | |
MultiLIGOTimeGPSVector * | XLALExtractMultiTimestampsFromSFTs (const MultiSFTVector *multiSFTs) |
Given a multi-SFT vector, return a MultiLIGOTimeGPSVector holding the SFT timestamps. More... | |
LIGOTimeGPSVector * | XLALTimestampsFromSFTCatalog (const SFTCatalog *catalog) |
Extract timestamps-vector of unique timestamps from the given SFTCatalog. More... | |
MultiLIGOTimeGPSVector * | XLALTimestampsFromMultiSFTCatalogView (const MultiSFTCatalogView *multiView) |
Given a multi-SFTCatalogView, return a MultiLIGOTimeGPSVector holding the SFT timestamps. More... | |
LALSegList * | XLALReadSegmentsFromFile (const char *fname) |
Function to read a segment list from given filename, returns a sorted LALSegList. More... | |
LIGOTimeGPSVector * | XLALTimestampsFromSegmentFile (const char *filename, REAL8 Tsft, REAL8 Toverlap, BOOLEAN adjustSegExtraTime, BOOLEAN synchronize) |
Extract timestamps-vector from a segment file, with functionality based on MakeSFTDAG The filename should point to a file containing <GPSstart GPSend> of segments or <GPSstart GPSend segLength numSFTs> where segLength is in hours. More... | |
SFT catalog create/destroy functions | |
SFTCatalog * | XLALSFTdataFind (const CHAR *file_pattern, const SFTConstraints *constraints) |
Find the list of SFTs matching the file_pattern and satisfying the given constraints, return an SFTCatalog of the matching SFTs. More... | |
void | XLALDestroySFTCatalog (SFTCatalog *catalog) |
Free an 'SFT-catalogue'. More... | |
MultiSFTCatalogView * | XLALGetMultiSFTCatalogView (const SFTCatalog *catalog) |
Return a MultiSFTCatalogView generated from an input SFTCatalog. More... | |
void | XLALDestroyMultiSFTCatalogView (MultiSFTCatalogView *multiView) |
Destroys a MultiSFTCatalogView, without freeing the original catalog that the 'view' was referring to, which must be destroyed separately using XLALDestroySFTCatalog(). More... | |
SFT catalog property functions | |
int | XLALCheckCRCSFTCatalog (BOOLEAN *crc_check, SFTCatalog *catalog) |
This function reads in the SFTs in the catalog and validates their CRC64 checksums. More... | |
LALStringVector * | XLALListIFOsInCatalog (const SFTCatalog *catalog) |
Return a sorted string vector listing the unique IFOs in the given catalog. More... | |
INT4 | XLALCountIFOsInCatalog (const SFTCatalog *catalog) |
Count the number of the unique IFOs in the given catalog. More... | |
const CHAR * | XLALshowSFTLocator (const struct tagSFTLocator *locator) |
Mostly for debugging purposes: provide a user-API to allow inspecting the SFT-locator [which is an OPAQUE entry in the SFTCatalog!]. More... | |
int | XLALSFTCatalogTimeslice (SFTCatalog *slice, const SFTCatalog *catalog, const LIGOTimeGPS *minStartGPS, const LIGOTimeGPS *maxStartGPS) |
Set a SFT catalog 'slice' to a timeslice of a larger SFT catalog 'catalog', with entries restricted to the interval ['minStartGPS','maxStartGPS') according to XLALCWGPSinRange(). More... | |
SFTCatalog * | XLALReturnSFTCatalogTimeslice (const SFTCatalog *catalog, const LIGOTimeGPS *minStartGPS, const LIGOTimeGPS *maxStartGPS) |
SFT catalog generation functions | |
SFTCatalog * | XLALAddToFakeSFTCatalog (SFTCatalog *catalog, const CHAR *detector, const LIGOTimeGPSVector *timestamps) |
Create a 'fake' SFT catalog which contains only detector and timestamp information. More... | |
SFTCatalog * | XLALMultiAddToFakeSFTCatalog (SFTCatalog *catalog, const LALStringVector *detectors, const MultiLIGOTimeGPSVector *timestamps) |
Multi-detector and multi-timestamp wrapper of XLALAddToFakeSFTCatalog(). More... | |
SFT file naming convention functions | |
int | XLALRegisterSpecialCWDetector (const LALDetector *specialDetector) |
Register a special detector for use with CW codes. More... | |
int | XLALFindCWDetector (CHAR **prefix, INT4 *lalCachedIndex, const CHAR *name, const BOOLEAN exactMatch) |
Parses valid CW detector names and prefixes. More... | |
BOOLEAN | XLALIsValidCWDetector (const CHAR *name) |
Determine if 'name' is a valid detector name or prefix. More... | |
CHAR * | XLALGetChannelPrefix (const CHAR *name) |
Find the valid CW detector prefix. More... | |
const LALDetector * | XLALGetSiteInfo (const CHAR *name) |
Find the site geometry-information 'LALDetector' for given a detector name (or prefix). More... | |
int | XLALFillSFTFilenameSpecStrings (SFTFilenameSpec *spec, const CHAR *path, const CHAR *extn, const CHAR *detector, const CHAR *window_type, const CHAR *privMisc, const CHAR *pubObsKind, const CHAR *pubChannel) |
Convenience function for filling out the string fields in a SFTFilenameSpec. More... | |
char * | XLALBuildSFTFilenameFromSpec (const SFTFilenameSpec *spec) |
Build an SFT file name from the given specification. More... | |
int | XLALParseSFTFilenameIntoSpec (SFTFilenameSpec *spec, const char *SFTpath) |
Parse a SFT file path and return its specification. More... | |
int | XLALCheckValidDescriptionField (const char *desc) |
Check whether given string qualifies as a valid 'description' field of a FRAME filename (per [25]) or SFT filename (per [4]) More... | |
int | XLALCompareSFTWindows (const CHAR *type1, const REAL8 param1, const CHAR *type2, const REAL8 param2) |
Check whether two SFT windows, each defined by a type name and parameter value, match. More... | |
SFT file reading functions | |
LALStringVector * | XLALFindFiles (const CHAR *globstring) |
Returns a list of filenames matching the input argument, which may be one of the following: More... | |
SFTVector * | XLALLoadSFTs (const SFTCatalog *catalog, REAL8 fMin, REAL8 fMax) |
Load the given frequency-band [fMin, fMax) (half-open) from the SFT-files listed in the SFT-'catalogue' ( returned by XLALSFTdataFind() ). More... | |
MultiSFTVector * | XLALLoadMultiSFTs (const SFTCatalog *inputCatalog, REAL8 fMin, REAL8 fMax) |
Function to load a catalog of SFTs from possibly different detectors. More... | |
MultiSFTVector * | XLALLoadMultiSFTsFromView (const MultiSFTCatalogView *multiCatalogView, REAL8 fMin, REAL8 fMax) |
This function loads a MultiSFTVector from a given input MultiSFTCatalogView, otherwise the documentation of XLALLoadMultiSFTs() applies. More... | |
MultiSFTVector * | XLALReadSFDB (REAL8 f_min, REAL8 f_max, const CHAR *file_pattern, const CHAR *timeStampsStarting, const CHAR *timeStampsFinishing) |
Return a MultiSFTVector struct from an input set of SFDBs, possibly from more than one detector. More... | |
SFT file writing functions | |
int | XLALWriteSFT2FilePointer (const SFTtype *sft, FILE *fp, const CHAR *SFTwindowtype, const REAL8 SFTwindowparam, const CHAR *SFTcomment) |
Write the given SFTtype to a FILE pointer. More... | |
int | XLALWriteSFT2NamedFile (const SFTtype *sft, const CHAR *SFTfilename, const CHAR *SFTwindowtype, const REAL8 SFTwindowparam, const CHAR *SFTcomment) |
Write the given SFTtype to a SFT file with the supplied filename. More... | |
int | XLALWriteSFT2StandardFile (const SFTtype *sft, SFTFilenameSpec *SFTfnspec, const CHAR *SFTcomment) |
Write the given SFTtype to a SFT file with a standard ([4]) filename. More... | |
int | XLALWriteSFTVector2NamedFile (const SFTVector *sftVect, const CHAR *SFTfilename, const CHAR *SFTwindowtype, const REAL8 SFTwindowparam, const CHAR *SFTcomment) |
Write the given SFTVector to a single merged SFT file with the supplied filename. More... | |
int | XLALWriteSFTVector2StandardFile (const SFTVector *sftVect, SFTFilenameSpec *SFTfnspec, const CHAR *SFTcomment, const BOOLEAN merged) |
Write the given SFTVector to SFT file(s) with a standard ([4]) filename(s). More... | |
int | XLALCheckSFTFileIsValid (const char *fname) |
Verify that the contents of a SFT file are valid. More... | |
Go to the source code of this file.
Data Structures | |
struct | MultiSFTVector |
A collection of SFT vectors – one for each IFO in a multi-IFO search. More... | |
struct | LIGOTimeGPSVector |
A vector of 'timestamps' of type LIGOTimeGPS. More... | |
struct | MultiLIGOTimeGPSVector |
A collection of (multi-IFO) LIGOTimeGPSVector time-stamps vectors. More... | |
struct | SFTConstraints |
'Constraints' for SFT-matching: which detector, within which time-stretch and which timestamps exactly should be loaded ? Any of the entries is optional, and they will be combined by logical AND. More... | |
struct | SFTDescriptor |
A 'descriptor' of an SFT: basically containing the header-info plus an opaque description of where exactly to load this SFT from. More... | |
struct | SFTCatalog |
An "SFT-catalogue": a vector of SFTdescriptors, as returned by XLALSFTdataFind() More... | |
struct | MultiSFTCatalogView |
A multi-SFT-catalogue "view": a multi-IFO vector of SFT-catalogs. More... | |
struct | SFTFilenameSpec |
Structure specifying an SFT file name, following the convention in [4] . More... | |
Typedefs | |
typedef COMPLEX8FrequencySeries | SFTtype |
A so-called 'SFT' (short-Fourier-transform) will be stored in a COMPLEX8FrequencySeries. More... | |
typedef COMPLEX8FrequencySeriesVector | SFTVector |
The corresponding vector-type to hold a vector of 'SFTs'. More... | |