2 ***********************************************************
4 $HeadURL: svn://dig.cs.gc.cuny.edu/snark/trunk/src/snark/trm6.h $
5 $LastChangedRevision: 122 $
6 $Date: 2014-07-09 18:18:59 -0400 (Wed, 09 Jul 2014) $
8 ***********************************************************
10 Abstract class for distance measurements
14 #ifndef Distance_Measure
15 #define Distance_Measure
19 class DistanceMeasure {
27 DistanceMeasure(char* distanceNameIn);
28 virtual ~DistanceMeasure();
31 * Calculates the distance for the provided reconstruction.
33 * input: recon the reconstruction, from which the distance should be calculated
34 * list a allocated list with lenght = max pixel intersected by one ray
35 * weight a allocated list with lenght = max pixel intersected by one ray
37 REAL calculateDistance(REAL* recon, INTEGER* list, REAL* weight);
40 * Calculates the distance for the provided reconstruction.
42 * input: reconPixel the reconstruction, from which the distance should be calculated
43 * list a allocated list with lenght = max pixel intersected by one ray
44 * weight a allocated list with lenght = max pixel intersected by one ray
46 virtual REAL calculateDistanceForPixel(REAL* reconPixel, INTEGER* list,
50 * Calculates the distance for the provided reconstruction.
52 * input: reconBlob the reconstruction, from which the distance should be calculated
53 * list a allocated list with lenght = max pixel intersected by one ray
54 * weight a allocated list with lenght = max pixel intersected by one ray
56 virtual REAL calculateDistanceForBlob(REAL* reconBlob, INTEGER* list,
60 * Returns the name of the distance measure