Initial snark14m import
[snark14.git] / src / snark / recfile.h
1 /* \r
2  ***********************************************************\r
3  $SNARK_Header: S N A R K  1 4 - A PICTURE RECONSTRUCTION PROGRAM $\r
4  $HeadURL: svn://dig.cs.gc.cuny.edu/snark/trunk/src/snark/recfile.h $\r
5  $LastChangedRevision: 94 $\r
6  $Date: 2014-07-02 18:53:30 -0400 (Wed, 02 Jul 2014) $\r
7  $Author: agulati $\r
8  ***********************************************************\r
9  */\r
10 \r
11 #ifndef RECFILE_H\r
12 #define RECFILE_H\r
13 \r
14 #include <cstdio>\r
15 \r
16 #include "DIGFileSnarkRec.h"\r
17 #include "blkdta.h"\r
18 \r
19 // these are the methods associated with the reconstruction file class\r
20 \r
21 extern class SnarkRecFile: private DIGFileSnarkRec\r
22 {\r
23 \r
24 protected:\r
25 \r
26         unsigned INTEGER NumberOfElements;\r
27         REAL PixelSize;\r
28         unsigned INTEGER RecSetNum;\r
29         unsigned INTEGER RecNum;\r
30 \r
31         REAL* DataBuffer;\r
32 \r
33         void FlipImage(REAL* Dst, REAL* Src);\r
34 \r
35 public:\r
36 \r
37         INTEGER Open(const CHAR *FileName, INTEGER nelem, REAL pixsiz);\r
38         INTEGER Open(const CHAR *FileName);\r
39 \r
40         INTEGER GetNelem(INTEGER *nelem);\r
41         INTEGER GetPixSize(REAL *pixsize);\r
42         INTEGER GetProjName(CHAR prjname[81]);\r
43         INTEGER SetProjName(CHAR *prjname);\r
44 \r
45         INTEGER WritePhan(CHAR *phnname, REAL *data);\r
46         INTEGER WriteRec(CHAR *recname, CHAR alg_name[4], unsigned INTEGER count, unsigned INTEGER iter, REAL *data);\r
47 \r
48         INTEGER ReadPhan(CHAR phnname[81], REAL *data);\r
49         INTEGER ReadRec(CHAR recname[81], CHAR alg_name[4], unsigned INTEGER *count, unsigned INTEGER *iter, REAL *data);\r
50 \r
51         INTEGER Close();\r
52 \r
53         INTEGER SelectRec(unsigned INTEGER RecNum);\r
54 \r
55 private:\r
56         INTEGER ApplyLimits(unsigned int pArraySize, REAL* pData);\r
57 \r
58 } RecFile;\r
59 \r
60 #endif\r