FrameStreamDef.h

Go to the documentation of this file.
00001 /*
00002 *  Copyright (C) 2007 Bernd Machenschalk, Jolien Creighton
00003 *
00004 *  This program is free software; you can redistribute it and/or modify
00005 *  it under the terms of the GNU General Public License as published by
00006 *  the Free Software Foundation; either version 2 of the License, or
00007 *  (at your option) any later version.
00008 *
00009 *  This program is distributed in the hope that it will be useful,
00010 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 *  GNU General Public License for more details.
00013 *
00014 *  You should have received a copy of the GNU General Public License
00015 *  along with with program; see the file COPYING. If not, write to the
00016 *  Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
00017 *  MA  02111-1307  USA
00018 */
00019 
00020 #ifndef _FRAMESTREAMDEF_H
00021 #define _FRAMESTREAMDEF_H
00022 #include <FrameL.h>
00023 #include <lal/LALDatatypes.h>
00024 
00025 #include <lal/LALRCSID.h>
00026 NRCSID (FRAMESTREAMDEFH,"$Id: FrameStreamDef.h,v 1.3 2007/06/08 14:41:46 bema Exp $");
00027 
00028 /* Useful macros */
00029 #define SECNAN_TO_I8TIME( sec, nan ) \
00030   ((INT8)1000000000*(INT8)(sec)+(INT8)(nan))
00031 /* Dangerous!!!: */
00032 #define EPOCH_TO_I8TIME( epoch ) \
00033   SECNAN_TO_I8TIME( (epoch).gpsSeconds, (epoch).gpsNanoSeconds )
00034 #define SET_EPOCH( pepoch, i8time ) \
00035   do { INT8 t=(i8time); LIGOTimeGPS *pe=(pepoch); \
00036     pe->gpsSeconds=t/(INT8)1000000000; pe->gpsNanoSeconds=t%(INT8)1000000000; \
00037   } while( 0 )
00038 
00039 typedef struct
00040 tagFrFileInfo
00041 {
00042   INT4  ind;
00043   CHAR *url;
00044   INT4  t0;
00045   INT4  dt;
00046 }
00047 FrFileInfo;
00048 
00049 /* Definition of FrStream */
00050 struct
00051 tagFrStream
00052 {
00053   FrFileInfo     *filelist;
00054   UINT4           numfiles;
00055   UINT4           filenum;
00056   struct FrFile  *frfile;
00057   struct FrameH  *frame;
00058   LIGOTimeGPS     epoch;
00059   INT4            end;
00060   INT4            err;
00061   INT4            gap;
00062 };
00063 #endif /* _FRAMESTREAMDEF_H */

Generated on Tue Oct 14 02:31:45 2008 for LAL by  doxygen 1.5.2