** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: projections.h,v 1.14 2000/09/02 05:10:39 kevin Exp $
+** $Id: projections.h,v 1.17 2000/12/16 03:29:02 kevin Exp $
**
**
** This program is free software; you can redistribute it and/or modify
class Scanner;
class DetectorArray;
class Array2dFileLabel;
-class ostringstream;
+
// Projections
class Projections
void initFromScanner (const Scanner& scanner);
+ void printProjectionData (int startView, int endView);
void printProjectionData ();
void printScanInfo (ostringstream& os) const;
const DetectorArray& getDetectorArray (const int iview) const
{ return (*m_projData[iview]); }
+
+ static bool copyHeader (const char* const filename, std::ostream& os);
+ static bool copyHeader (const string& filename, std::ostream& os);
+
+ static bool copyViewData (const char* const filename, std::ostream& os, int startView, int endView);
+ static bool copyViewData (const string& filename, std::ostream& os, int startView, int endView);
private:
int m_headerSize; // Size of disk file header
int m_geometry; // Geometry of scanner
- struct DetectorArray **m_projData; // Pointer to array of detarray_st pointers
+ class DetectorArray **m_projData; // Pointer to array of detarray_st pointers
string m_remark; // description of raysum data
int m_nDet; // number of detectors in array
int m_nView; // number of rotated views
string m_filename;
Array2dFileLabel m_label;
- const static kuint16 m_signature = ('P'*256 + 'J');
+ const static kuint16 m_signature;
- bool headerRead ();
- bool headerWrite ();
- bool headerRead (fnetorderstream& fs);
bool headerWrite (fnetorderstream& fs);
+ bool headerRead (fnetorderstream& fs);
void newProjData ();
void deleteProjData ();