#include <lal/LALRCSID.h>
This header defines a pair of macros RCSID() and
NRCSID(), which are used to assign Revision Control System
(RCS) ID strings to a given source file. Whenever a file is added or
changed in the central LAL distribution, the RCS software searches for
symbols of the form $Id$ or $Id: ... $, and expands them into strings that give information about
the file's name, version number, when it was last modified and by
whom. For an example of an RCS ID string, look at the $Id:
... $ line at the bottom of this page.
The macro RCSID() is called as follows:
RCSID($Id$);
This assigns the RCS ID string to a variable
static const char *rcsid in a given module or header. This
variable will be loaded onto the stack whenever code from that module
or header is used. This can be used as a diagnostic tool by
debuggers.
The macro NRCSID() is called in the following manner:
NRCSID(MYFILEC,$Id$);
This assigns the RCS ID string to the variable
MYFILEC, as above. Standard LAL naming conventions are that
the variable name should be the file name converted to capital
letters, with file extensions but without periods. Thus
the module MyFile.c should store its ID in the variable
MYFILEC, while the header MyHeader.h should store it in
MYHEADERH.
LAL convention dictates that all modules and header files must call
NRCSID() using the naming convention above. The call must be
made after all subsidiary header files have been included (notably
this header file, or LALStdlib.h which includes this header
file), but before any actual functions or function prototypes. In
modules containing LAL functions, the RCS ID string will typically be
assigned to the LALStatus structure for those functions; see the
documentation for the header LALStatusMacros.h.
This header is included automatically by all standard LAL headers,
including LALDatatypes.h, LALStatusMacros.h, and
LALStdlib.h. Thus if you have included any of the
standard LAL headers, you will have gotten LALRCSID.h as well,
and don't need to #include it separately. However, including
it separately is not an error, as this and all LAL headers are
required to have double-include protection.
Author: Unknown? Provided by Stuart Anderson $Id: LALRCSID.h,v 1.5 2000/11/09 23:37:20 jolien Exp $