Example of a test. To be completed.
52{
53 unsigned int nbok = 0;
54 unsigned int nb = 0;
61
63 for(unsigned int i =0; i< 5; i++){
64 for(unsigned int j =0; j< 5; j++){
65 for(unsigned int k =0; k< 5; k++){
67 }
68 }
69 }
71 for(unsigned int i =0; i< 5; i++){
72 for(unsigned int j =0; j< 5; j++){
73 for(unsigned int k =0; k< 5; k++){
75 }
76 }
77 }
79 for(unsigned int i =0; i< 5; i++){
80 for(unsigned int j =0; j< 5; j++){
82 }
83 }
84
86
87
88 for(unsigned int i =0; i<= 255; i++){
89 for(unsigned int j =0; j<= 255; j++){
91 }
92 }
93
94
95 trace.beginBlock (
"Testing block ..." );
96 std::string filenameImage1 = testPath + "samples/cat10.pgm3d";
97 trace.info() <<
"Reading 3D image ... ";
99 trace.info() <<
"[done]" << std::endl;
100 trace.info() <<
"Testing writing PGM3D ... ";
101 bool ok1 = anImportedImage1>> "testGenericWriter.pgm3d";
102 trace.info() <<
"[done]" << std::endl;
103
104 bool okh5 = true;
105#ifdef DGTAL_WITH_HDF5
106 trace.info() <<
"Testing writing HDF5 3D ... ";
107 okh5 = anImportedImage1 >> "testGenericWriter.h5";
108 trace.info() <<
"[done]" << std::endl;
109 trace.info() <<
"Testing writing HDF5 3D (bis) ... ";
111 trace.info() <<
"[done]" << std::endl;
112#endif
113
114 trace.info() <<
"Testing writing vol ... ";
115 bool ok2 = anImportedImage1 >> "testGenericWriter.vol";
116 trace.info() <<
"[done]" << std::endl;
117 trace.info() <<
"Testing writing longvol ... ";
118 bool ok2bis = an64bitsImage3D >> "testGenericWriter.longvol";
119 trace.info() <<
"[done]" << std::endl;
120 trace.info() <<
"Testing writing raw ... ";
121 bool ok3 = anImportedImage1 >>"testGenericWriter.raw";
122 trace.info() <<
"[done]" << std::endl;
123 trace.info() <<
"Testing writing raw (bis) ... ";
125 trace.info() <<
"[done]" << std::endl;
126 bool okITK= true;
127#ifdef DGTAL_WITH_ITK
129 trace.info() <<
"Testing writing ITK (" << ext <<
") ... ";
130 if( ext != std::string("gz") )
131 {
132 okITK &= anImportedImage1 >> (std::string("testGenericWriter.") + ext);
133 }
134 trace.info() <<
"[done]" << std::endl;
135 }
136 trace.info() <<
"Testing writing ITK (.nii.gz) ... ";
137 okITK &= anImportedImage1 >> "testGenericWriter.nii.gz";
138 trace.info() <<
"[done]" << std::endl;
139#endif
140
141 std::string filenameImage2 = testPath + "samples/contourS.pgm";
142
143 trace.info() <<
"Reading 2D image ... ";
145 trace.info() <<
"[done]" << std::endl;
146 trace.info() <<
"Testing writing pgm ... ";
147 bool ok4 = anImportedImage2 >> "testGenericWriter.pgm";
148 trace.info() <<
"[done]" << std::endl;
149 trace.info() <<
"Testing writing raw ... ";
150 bool ok5 = anImportedImage2 >> "testGenericWriter.raw";
153 trace.info() <<
"[done]" << std::endl;
154 trace.info() <<
"Testing writing color image writer ... ";
157 trace.info() <<
"[done]" << std::endl;
158 nbok += ((ok1 && okh5 && ok2 & ok2bis && ok3 && ok3bis && ok4 && ok5 && ok6 && ok7 && ok8 && okITK) ? 1 : 0);
159 nb++;
160 trace.info() <<
"(" << nbok <<
"/" << nb <<
") "
161 << "true == true" << std::endl;
163
164 return nbok == nb;
165}
Structure representing an RGB triple with alpha component.
HyperRectDomain< Space > Domain
HyperRectDomain< Space > Domain
const auto ITK_IO_IMAGE_EXT
static TContainer import(const std::string &filename, std::vector< unsigned int > dimSpace=std::vector< unsigned int >())
static bool exportFile(const std::string &filename, const TContainer &anImage, const TFunctor &aFunctor=TFunctor())