2 ***********************************************************
3 $SNARK_Header: S N A R K 1 4 - A PICTURE RECONSTRUCTION PROGRAM $
4 $HeadURL: svn://dig.cs.gc.cuny.edu/snark/trunk/src/snark/GeometricBehaviour.h $
5 $LastChangedRevision: 81 $
6 $Date: 2014-07-02 11:07:09 -0400 (Wed, 02 Jul 2014) $
8 ***********************************************************
11 #ifndef GEOMETRICBEHAVIOUR_H_
12 #define GEOMETRICBEHAVIOUR_H_
17 * Class to hold all functions related to the geometric behaviour. Can be used for the strategy pattern.
19 class GeometricBehaviour
24 virtual ~GeometricBehaviour();
26 static GeometricBehaviour* getInstance();
28 virtual void getRayTrace(INTEGER np, INTEGER nr, INTEGER* list,
29 REAL* weight, INTEGER* numb, REAL* snorm, REAL * _sorx = 0,
30 REAL * _sory = 0, REAL * _cf = 0, REAL * _sf = 0) = 0;
32 virtual INTEGER getArea() = 0;
34 INTEGER getArrayIndex(INTEGER row, INTEGER column);
36 void getPixelPosition(INTEGER arrayIndex, INTEGER* row, INTEGER* column);
40 #endif /* GEOMETRICBEHAVIOUR_H_ */