LALMetaIO 4.0.6.1-eeff03c
processtable.c File Reference

Prototypes

ProcessTableXLALCreateProcessTableRow (void)
 Create a ProcessTable structure. More...
 
ProcessTableXLALDestroyProcessTableRow (ProcessTable *row)
 Destroy a ProcessTable structure. More...
 
void XLALDestroyProcessTable (ProcessTable *head)
 Destroy a ProcessTable linked list. More...
 
long XLALProcessTableGetNextID (ProcessTable *head)
 Return the next available process ID. More...
 
int XLALCountProcessTable (ProcessTable *head)
 Count and return the number of rows in the linked list. More...
 
static char * cvs_get_keyword_value (const char *cvs_string)
 Parses a cvs keyword string in the form. More...
 
int XLALPopulateProcessTable (ProcessTable *ptable, const char *program_name, const char *cvs_revision, const char *cvs_source, const char *cvs_date, long process_id)
 Populate a pre-allocated ProcessTable structure. More...
 
ProcessTableXLALProcessTableFromLIGOLw (const char *filename)
 Read the process table from a LIGO Light Weight XML file into a linked list of ProcessTable structures. More...
 
int XLALWriteLIGOLwXMLProcessTable (LIGOLwXMLStream *xml, const ProcessTable *process)
 Write a process table to an XML file. More...
 

Go to the source code of this file.

Macros

#define _GNU_SOURCE
 

Macro Definition Documentation

◆ _GNU_SOURCE

#define _GNU_SOURCE

Definition at line 22 of file processtable.c.

Function Documentation

◆ XLALCreateProcessTableRow()

ProcessTable * XLALCreateProcessTableRow ( void  )

Create a ProcessTable structure.

Definition at line 52 of file processtable.c.

◆ XLALDestroyProcessTableRow()

ProcessTable * XLALDestroyProcessTableRow ( ProcessTable row)

Destroy a ProcessTable structure.

Definition at line 83 of file processtable.c.

◆ XLALDestroyProcessTable()

void XLALDestroyProcessTable ( ProcessTable head)

Destroy a ProcessTable linked list.

Definition at line 94 of file processtable.c.

◆ XLALProcessTableGetNextID()

long XLALProcessTableGetNextID ( ProcessTable head)

Return the next available process ID.

Definition at line 104 of file processtable.c.

◆ XLALCountProcessTable()

int XLALCountProcessTable ( ProcessTable head)

Count and return the number of rows in the linked list.

Definition at line 117 of file processtable.c.

◆ cvs_get_keyword_value()

static char * cvs_get_keyword_value ( const char *  cvs_string)
static

Parses a cvs keyword string in the form.

$keyword:value$, returning a newly-malloc()'ed string containing just the value. Leading and trailing whitespace is removed from the value string. Returns NULL on parse or malloc() failure.

Definition at line 135 of file processtable.c.

◆ XLALPopulateProcessTable()

int XLALPopulateProcessTable ( ProcessTable ptable,
const char *  program_name,
const char *  cvs_revision,
const char *  cvs_source,
const char *  cvs_date,
long  process_id 
)

Populate a pre-allocated ProcessTable structure.

Definition at line 220 of file processtable.c.

◆ XLALProcessTableFromLIGOLw()

ProcessTable * XLALProcessTableFromLIGOLw ( const char *  filename)

Read the process table from a LIGO Light Weight XML file into a linked list of ProcessTable structures.

Definition at line 345 of file processtable.c.

◆ XLALWriteLIGOLwXMLProcessTable()

int XLALWriteLIGOLwXMLProcessTable ( LIGOLwXMLStream xml,
const ProcessTable process 
)

Write a process table to an XML file.

Definition at line 471 of file processtable.c.