// ArchTOIPipe (C) CEA/DAPNIA/SPP IN2P3/LAL // Eric Aubourg // Cecile Renault // Christophe Magneville // Reza Ansari // $Id: fitsringwtr.cc,v 1.7 2003-04-17 13:47:34 cecile Exp $ #include "fitsringwtr.h" #include "toimanager.h" extern void fits_lock(); extern void fits_unlock(); FITSRingWriter::FITSRingWriter(string fn) { fname = fn; fstatus = 0; // Open file remove(fname.c_str()); fits_lock(); fits_create_file(&fptr,fname.c_str(),&fstatus); fits_unlock(); name = "ringwriter"; cout << "FITSRINGWriter:: FileName=" << name << endl; } FITSRingWriter::~FITSRingWriter() { } void FITSRingWriter::setNSamples(long n) { nSamples = n; } void FITSRingWriter::setNRings(long n) { nRings = n; } void FITSRingWriter::setAperture(double a) { aperture = a; } void FITSRingWriter::init() { declareInput("signal"); } void FITSRingWriter::run() { //int snb = getMinIn(); ON IGNORE ICI //int sne = getMaxIn(); ON IGNORE ICI char buf[100]; fits_lock(); fits_create_img(fptr,BYTE_IMG,0,NULL,&fstatus); fits_write_date(fptr, &fstatus); fits_write_comment(fptr,"ArchTOIPipe FITSRingWriter",&fstatus); strcpy(buf, "RINGSET"); fits_write_key(fptr, TSTRING, "PDMTYPE", &buf, "Planck Data Model Type", &fstatus); fits_write_key(fptr, TLONG, "NCIRCLES", &nRings, "Number of rings", &fstatus); fits_unlock(); char* ttype = "DATA"; char* tform = "1D"; char xname[100]; for (int ring = 0; ring 1000) cout << i << " " << data << endl; fits_lock(); fits_write_col(fptr, TDOUBLE, 1,i+1,1,1, &data, &fstatus); fits_unlock(); } } fits_lock(); fits_close_file(fptr, &fstatus); fits_report_error(stderr, fstatus); fits_unlock(); cout << "fitsringwriter done " << endl; }