r64: *** empty log message ***
[ctsim.git] / TODO
diff --git a/TODO b/TODO
index dc922061d90f7de8c8c9ad83aefb5315f0306d06..6aad0bafec7a40dfe9ff300a697e58604e2d596c 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,7 +1,78 @@
+MISCELLANEOUS
+=============
+
 Integrate low-level X11 graphics, replace all low-level driver code in
 libgraph. All the high-level graphics routines are in place.
 
-Make data file formats cross-platform compatible
+Make SDF file format cross-platform compatible
 
 Integrate audio drivers into libcio -- used for the interactive CT display.
 
+PROPOSED MENU STRUCTURE
+=======================
+File
+  New
+    Phantom
+  Open
+    SDF
+
+Process
+  Simulate CT process (active only when phantom outline shown)
+  Rasterize Phantom (active only when phantom outline shown)
+  Reconstruct CT data (active only when raysum data is shown)
+
+Filter
+  (Various single and dual image transformations)
+
+Compare
+  Compare 2 images
+    2D grayscale subtraction
+    1D column plots
+  Single Image statistics
+
+PROPOSED HDF FILE FORMAT
+========================
+
+If the HDF library is compiled into CTSim, it will be used for the
+raysum and image files.
+
+Reconstruction Groups
+---------------------
+Group Name="Recon"
+  SubDataset="ReconParam"
+  SubGroup="Proj"
+    SubDataset="Raysum"
+    SubDataset="Geometry"
+  SubGroup="Phantom"
+    SubDataset "FImage"
+  SubGroup="Reconstr"
+    SubDataset "FImage"
+
+Image Dataset
+-------------
+Name="FImage"
+DataType: FLOAT
+Attributes: 
+  "XSize" DOUBLE : X size of pixel in world coordinates
+  "YSize" DOUBLE : Y size of pixel in world coordinates
+
+
+Raysum Group
+-------------
+Group Name="Proj"
+Proj Dataset
+  Name="Raysum"
+  DataType: FLOAT
+  Dim: 2 (nviews x ndet)
+  Attributes:
+Geometry Dataset
+  Name="Geometry"
+  DataType: FLOAT
+  Dim: 1  (nviews x 1)
+  Data: For each view, store view_angle
+  Attributes: 
+    "GEOMCODE" INT : Geometry Code
+    "DETSTART"
+    "DETINC"
+    "ROTSTART"
+    "ROTINC"