// This code prints out the pixel image data from
// a 16-bit FITS file. The image dimensions are read
// from the header.
#include <iostream>
#include "CFitsFile.h"
using namespace std;
using namespace arc;
int main()
{
long naxes[ CFitsFile::NAXES_SIZE ] = { 0, 0, 0 };
try {
CFitsFile cFits( "Image.fit" );
unsigned short *pBuf = ( unsigned short * )cFits.Read();
if ( pBuf == NULL )
{
cerr << "Error: NULL image buffer!" << endl;
exit( 1 );
}
cFits.GetParameters( naxes );
for ( int r=0; r<naxes[ CFitsFile::NAXES_ROW ]; r++ )
{
for ( int c=0; c<naxes[ CFitsFile::NAXES_COL ]; c++ )
{
cout << "pix[ " << ( c + r * naxes[ CFitsFile::NAXES_COL ] )
<< " ]: " << pBuf[ c + r * naxes[ CFitsFile::NAXES_COL ] ]
<< endl;
}
}
}
catch ( std::exception &e )
{
cerr << "Exception Occurred: " << e.what() << endl;
}
}
© Astronomical Research Cameras, Inc.