// ////////////////////////////////////////////////////////////////////////////
//
//  File:      TFFitsIO.h
//
//  Version:   1.0
//
//  Author:    Reiner Rohlfs (GADC)
//
//  History:   1.0   13.08.03  first released version
//
// ////////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TFFitsIO
#define ROOT_TFFitsIO


#ifndef ROOT_TFVirtualIO
#include "TFVirtualIO.h"
#endif


class TFFitsIO : public TFVirtualIO
{
protected:
   void  * fFptr;
   int   fCycle;

public:
   TFFitsIO() {}
   TFFitsIO( TFIOElement * element, const char * fileName);
   TFFitsIO( TFIOElement * element, void * fptr, int cycle);
 
   ~TFFitsIO();

   static   TFIOElement *  TFRead(const char * fileName, const char * name, 
                                  Int_t cycle = 0, FMode mode = kFRead, 
                                  TClass * classType = NULL);

   virtual  Bool_t         IsOpen();
   virtual  const char *   GetFileName();
   virtual  Int_t          GetCycle();

   virtual  void           SetCompressionLevel(Int_t level) {}
   virtual  Int_t          GetCompressionLevel() {return 0;} 

   virtual  void           CreateElement();
   virtual  Int_t          DeleteElement();
   virtual  Int_t          SaveElement(Int_t compLevel = -1);

   // TFTable interface funmctions
   virtual  UInt_t         GetNumColumns();
   virtual  TFBaseCol *    ReadCol(const char * name);
   virtual  void           ReadAllCol(ColList & columns);
   virtual  Int_t          SaveColumns(ColList & columns, Int_t compLevel = -1);
   virtual  Int_t          DeleteColumn(const char * name);
   virtual  void           GetColNames(std::map<TString, TNamed> & columns);

private:

   ClassDef(TFFitsIO,0) //interface to FITS files to store TFIOElements

};

//_____________________________________________________________________________

class TFFitsFileIter : public TFVirtualFileIter
{
protected:
   void  * fFptr;
   int   fStatus;
   int   fCycle;
   FMode fMode;

public:
   TFFitsFileIter(const char * fileName, FMode mode = kFRead);
   ~TFFitsFileIter();

   virtual  Bool_t        IsOpen()  {return fFptr != NULL;}
   virtual  Bool_t        Next();
   virtual  void          Reset();
      
  
   ClassDef(TFFitsFileIter,0) // an iterator for all HDUs of one FITS file
};


#endif // ROOT_TFVirtualIO

Last update: Fri Mar 14 13:55:16 2008

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.