1 #ifndef VECTOR_3_IMAGE_POLICY_HXX
2 #define VECTOR_3_IMAGE_POLICY_HXX
3 
4 #include "test_policy_parent.hxx"
5 #include <unittest.hxx>
6 
7 template<class Vector3ImageP>                                           // bei dem template handelt es sich um Vector3Image, der einer der folgenden Varianten einnehmen kann: FVector3Image, DVector3Image, Vector3Image
8 class Vector3ImagePolicy
9 : public TestPolicy<Vector3ImageP>
10 {
11 
12 public:
13     typedef Vector3ImageP                       Image;                  // die zu testende Klasse
14     typedef Vector3ImageP                       ChildImage;             // entspricht der zu testenden Klasse
15     typedef typename Vector3ImageP::PixelType   PixelType;              // PixelType der zu testenden Klasse
16     typedef typename Image::value_type          value_type;             // value_type der zu testenden Klasse
17     typedef typename Image::value_type          child_value_type;       // entspricht dem value_type der zu testenden Klasse
18     typedef std::vector<value_type>             data_array_type;
19     typedef std::vector<value_type>             child_data_array_type;
20     typedef typename value_type::value_type     type;
21 
getData()22     static data_array_type getData()
23     {
24         type frgb = 0.1;
25         static value_type data[15];
26 
27         for(int i = 0; i <= 14 ; i ++)
28         {
29             data[i] = value_type((i+frgb), (2*i), (2*i + frgb));
30         }
31         static data_array_type data_vector(data, data+sizeof(data)/sizeof(value_type));
32         return data_vector;
33     }
34 
getChildData()35     static child_data_array_type getChildData()
36     {
37         return getData();
38     }
39 };// end of class Vector3ImagePolicy
40 
41 struct Vector3ImageHierarchyTestSuite
42 : public vigra::test_suite
43 {
44     Vector3ImageHierarchyTestSuite();
45 };
46 
47 
48 struct Vector3BasicImageTestSuite
49 : public vigra::test_suite
50 {
51     Vector3BasicImageTestSuite();
52 };
53 
54 
55 #endif // VECTOR_3_IMAGE_POLICY_HXX
56