Main Page | Class List | Directories | File List | Class Members | File Members

ObitIOImageFITS.h File Reference

ObitIOImageFITS class definition. More...

#include "fitsio.h"
#include "ObitIO.h"
#include "ObitImageDesc.h"
#include "ObitIOImageFITSDef.h"
#include "ObitClassDef.h"
#include "ObitIOClassDef.h"

Go to the source code of this file.

Classes

struct  ObitIOImageFITS
 ObitIOImageFITS Class structure. More...
struct  ObitIOImageFITSClassInfo
 ClassInfo Structure. More...

Defines

#define ObitIOImageFITSUnref(in)   ObitUnref (in)
 Macro to unreference (and possibly destroy) an ObitIOImageFITS returns a ObitIOImageImageFITS* (NULL).
#define IOImageFITSRef(in)   ObitRef (in)
 Macro to reference (update reference count) an IOImageFITS.
#define IOImageFITSIsA(in)   ObitIsA (in, IOImageFITSGetClass())
 Macro to determine if an object is the member of this or a derived class.

Functions

void ObitIOImageFITSClassInit (void)
 Public: Class initializer.
ObitIOImageFITSnewObitIOImageFITS (gchar *name, ObitInfoList *info, ObitErr *err)
 Public: Constructor.
gconstpointer ObitIOImageFITSGetClass (void)
 Public: ClassInfo pointer.
gboolean ObitIOImageFITSSame (ObitIO *in, ObitInfoList *in1, ObitInfoList *in2, ObitErr *err)
 Public: Are underlying structures the same.
void ObitIOImageFITSRename (ObitIO *in, ObitInfoList *info, ObitErr *err)
 Public: Rename underlying structures.
void ObitIOImageFITSZap (ObitIOImageFITS *in, ObitErr *err)
 Public: Delete underlying structures.
ObitIOImageFITSObitIOImageFITSCopy (ObitIOImageFITS *in, ObitIOImageFITS *out, ObitErr *err)
 Public: Copy constructor.
ObitIOImageFITSfreeObitIOImageFITS (ObitIOImageFITS *in)
 Public: Unconditional destructor.
ObitIOCode ObitIOImageFITSOpen (ObitIOImageFITS *in, ObitIOAccess access, ObitInfoList *info, ObitErr *err)
 Public: Open.
ObitIOCode ObitIOImageFITSClose (ObitIOImageFITS *in, ObitErr *err)
 Public: Close.
ObitIOCode ObitIOImageFITSSet (ObitIOImageFITS *in, ObitInfoList *info, ObitErr *err)
 Public: Init I/O.
ObitIOCode ObitIOImageFITSRead (ObitIOImageFITS *in, gfloat *data, ObitErr *err)
 Public: Read.
ObitIOCode ObitIOImageFITSWrite (ObitIOImageFITS *in, gfloat *data, ObitErr *err)
 Public: Write.
ObitIOCode ObitIOImageFITSFlush (ObitIOImageFITS *in, ObitErr *err)
 Public: Flush.
ObitIOCode ObitIOImageFITSReadDescriptor (ObitIOImageFITS *in, ObitErr *err)
 Public: Read Descriptor.
ObitIOCode ObitIOImageFITSWriteDescriptor (ObitIOImageFITS *in, ObitErr *err)
 Public: Write Descriptor.
void ObitIOImageFITSCreateBuffer (gfloat **data, glong *size, ObitIOImageFITS *in, ObitInfoList *info, ObitErr *err)
 Public: Create buffer.
ObitnewObitIOImageFITSTable (ObitIOImageFITS *in, ObitIOAccess access, gchar *tabType, glong *tabVer, ObitErr *err)
 Public: Create an associated Table Typed as base class to avoid problems.
ObitIOCode ObitIOImageFITSUpdateTables (ObitIOImageFITS *in, ObitInfoList *info, ObitErr *err)
 Public: Update disk resident tables information.
void ObitIOImageFITSUpdateScale (ObitIOImageFITS *in, gfloat quant, ObitErr *err)
 Public: Update header BSCALE,BZERO.


Detailed Description

ObitIOImageFITS class definition.

This class provides an interface to the cfitsio package for FITS images.

This class is derived from the ObitIO class.

Usage

Instances of this class are for access to FITS image files using the cfitsio package. Instances can be made using the newObitIOImageFITS constructor, or the ObitIOImageFITSCopy copy constructor and pointers copied (with reference pointer update) using ObitIORef. The destructor (when reference count goes to zero) is ObitIOUnref. This class should seldom need be accessed directly outside of the ObitIO class. Parameters needed (passed via ObitInfoList) are:

Define Documentation

#define IOImageFITSIsA in   )     ObitIsA (in, IOImageFITSGetClass())
 

Macro to determine if an object is the member of this or a derived class.

Returns TRUE if a member, else FALSE in = object to reference

#define IOImageFITSRef in   )     ObitRef (in)
 

Macro to reference (update reference count) an IOImageFITS.

returns a IOImageFITS*. in = object to reference

#define ObitIOImageFITSUnref in   )     ObitUnref (in)
 

Macro to unreference (and possibly destroy) an ObitIOImageFITS returns a ObitIOImageImageFITS* (NULL).

in = object to unreference.


Function Documentation

ObitIOImageFITS* freeObitIOImageFITS ObitIOImageFITS in  ) 
 

Public: Unconditional destructor.

ObitIOImageFITS* newObitIOImageFITS gchar *  name,
ObitInfoList info,
ObitErr err
 

Public: Constructor.

Initializes class on the first call.

Parameters:
name An optional name for the object.
info if non-NULL it is used to initialize the new object.
err ObitErr for error messages.
Returns:
the new object.

Obit* newObitIOImageFITSTable ObitIOImageFITS in,
ObitIOAccess  access,
gchar *  tabType,
glong *  tabVer,
ObitErr err
 

Public: Create an associated Table Typed as base class to avoid problems.

If such an object exists, a reference to it is returned, else a new object is created and entered in the ObitTableList. Returned object is typed an Obit to prevent circular definitions between the ObitTable and the ObitIO classes.

Parameters:
in Pointer to object with associated tables. This MUST have been opened before this call.
access access (OBIT_IO_ReadOnly,OBIT_IO_ReadWrite, or OBIT_IO_WriteOnly). This is used to determine defaulted version number and a different value may be used for the actual Open.
tabType The table type (e.g. "AIPS CC").
tabVer Desired version number, may be zero in which case the highest extant version is returned for read and the highest+1 for OBIT_IO_WriteOnly.
err ObitErr for reporting errors.
Returns:
pointer to created ObitTable, NULL on failure.

void ObitIOImageFITSClassInit void   ) 
 

Public: Class initializer.

ObitIOCode ObitIOImageFITSClose ObitIOImageFITS in,
ObitErr err
 

Public: Close.

Parameters:
in Pointer to object to be closed.
err ObitErr for reporting errors.
Returns:
error code, 0=> OK

ObitIOImageFITS* ObitIOImageFITSCopy ObitIOImageFITS in,
ObitIOImageFITS out,
ObitErr err
 

Public: Copy constructor.

The result will have pointers to the more complex members. Parent class members are included but any derived class info is ignored.

Parameters:
in The object to copy
out An existing object pointer for output or NULL if none exists.
err Obit error stack object.
Returns:
pointer to the new object.

void ObitIOImageFITSCreateBuffer gfloat **  data,
glong *  size,
ObitIOImageFITS in,
ObitInfoList info,
ObitErr err
 

Public: Create buffer.

Not actually used for Images. Should be called after ObitIO is opened.

Parameters:
data (output) pointer to data array
size (output) size of data array in floats.
in Pointer to object to be accessed.
info ObitInfoList with instructions
err ObitErr for reporting errors.

ObitIOCode ObitIOImageFITSFlush ObitIOImageFITS in,
ObitErr err
 

Public: Flush.

Parameters:
in Pointer to object to be accessed.
err ObitErr for reporting errors.
Returns:
return code, 0=> OK

gconstpointer ObitIOImageFITSGetClass void   ) 
 

Public: ClassInfo pointer.

Initializes class if needed on first call.

Returns:
pointer to the class structure.

ObitIOCode ObitIOImageFITSOpen ObitIOImageFITS in,
ObitIOAccess  access,
ObitInfoList info,
ObitErr err
 

Public: Open.

The file etc. info should have been stored in the ObitInfoList. The image descriptor is read if ReadOnly or ReadWrite and written to disk if opened WriteOnly. For accessing FITS files the following entries in the ObitInfoList are used:

  • "Disk" OBIT_int (1,1,1) FITS "disk" number.
  • "FileName" OBIT_string (?,1,1) FITS file name.
    Parameters:
    in Pointer to object to be opened.
    in Pointer to object to be opened.
    access access (OBIT_IO_ReadOnly,OBIT_IO_ReadWrite)
    info ObitInfoList with instructions for opening
    err ObitErr for reporting errors.
    Returns:
    return code, 0=> OK

ObitIOCode ObitIOImageFITSRead ObitIOImageFITS in,
gfloat *  data,
ObitErr err
 

Public: Read.

Reads row in->myDesc->row + 1; plane in->myDesc->plane + 1 When OBIT_IO_EOF is returned all data has been read (then is no new data in data) and the I/O has been closed.

Parameters:
in Pointer to object to be read.
data pointer to buffer to write results.
err ObitErr for reporting errors.
Returns:
return code, 0(OBIT_IO_OK)=> OK, OBIT_IO_EOF => image finished.

ObitIOCode ObitIOImageFITSReadDescriptor ObitIOImageFITS in,
ObitErr err
 

Public: Read Descriptor.

Parameters:
in Pointer to object with ObitImageDesc to be read.
err ObitErr for reporting errors.
Returns:
return code, 0=> OK

void ObitIOImageFITSRename ObitIO in,
ObitInfoList info,
ObitErr err
 

Public: Rename underlying structures.

New name information is given on the info member:

  • "newFileName" OBIT_string (?,1,1) New Name of disk file.
    Parameters:
    in Pointer to object to be renamed
    info Associated ObitInfoList
    err ObitErr for reporting errors.

gboolean ObitIOImageFITSSame ObitIO in,
ObitInfoList in1,
ObitInfoList in2,
ObitErr err
 

Public: Are underlying structures the same.

This test is done using values entered into the ObitInfoList in case the object has not yet been opened.

Parameters:
in ObitIO for test
in1 ObitInfoList for first object to be tested
in2 ObitInfoList for second object to be tested
err ObitErr for reporting errors.
Returns:
TRUE if to objects have the same underlying structures else FALSE

ObitIOCode ObitIOImageFITSSet ObitIOImageFITS in,
ObitInfoList info,
ObitErr err
 

Public: Init I/O.

Parameters:
in Pointer to object to be accessed.
info ObitInfoList with instructions
err ObitErr for reporting errors.
Returns:
return code, 0=> OK

void ObitIOImageFITSUpdateScale ObitIOImageFITS in,
gfloat  quant,
ObitErr err
 

Public: Update header BSCALE,BZERO.

Parameters:
in Pointer to object to be updated.
quant Quantization desired, 0.0 use pixel value range to set scaling
err ObitErr for reporting errors.

ObitIOCode ObitIOImageFITSUpdateTables ObitIOImageFITS in,
ObitInfoList info,
ObitErr err
 

Public: Update disk resident tables information.

Nothing is needed for FITS files.

Parameters:
in Pointer to object to be updated.
info ObitInfoList of parent object (not used here).
err ObitErr for reporting errors.
Returns:
return code, OBIT_IO_OK=> OK

ObitIOCode ObitIOImageFITSWrite ObitIOImageFITS in,
gfloat *  data,
ObitErr err
 

Public: Write.

Writes row in->myDesc->row + 1; plane in->myDesc->plane + 1 Writing partial images is only supported in row at a time mode. When OBIT_IO_EOF is returned the image has been written, data in data is ignored and the I/O is closed.

Parameters:
in Pointer to object to be written.
data pointer to buffer containing input data.
err ObitErr for reporting errors.
Returns:
return code, 0(OBIT_IO_OK)=> OK OBIT_IO_EOF => image finished.

ObitIOCode ObitIOImageFITSWriteDescriptor ObitIOImageFITS in,
ObitErr err
 

Public: Write Descriptor.

Parameters:
in Pointer to object with ObitImageDesc to be written. If infoList member contains "Quant" entry and it is > 0.0 and an integer output (Bitpix 16, 32) is specified then the output will be quantized at this level.
err ObitErr for reporting errors.
Returns:
return code, 0=> OK

void ObitIOImageFITSZap ObitIOImageFITS in,
ObitErr err
 

Public: Delete underlying structures.

Delete the whole FITS file.

Parameters:
in Pointer to object to be zapped.
err ObitErr for reporting errors.


Generated on Fri Aug 31 22:13:06 2007 for Obit by  doxygen 1.3.9.1