1127 o <<
"--- File information ---" << std::endl;
1128 o <<
"Filename : " << I.
filename << std::endl;
1129 o <<
"Endianess : ";
1131 o <<
"Little" << std::endl;
1133 o <<
"Big" << std::endl;
1137 o <<
"True" << std::endl;
1139 o <<
"False" << std::endl;
1143 o <<
"Data offset : " << I.
offset << std::endl;
1146 o <<
"--- Image information ---" << std::endl;
1149 if ((fileDT == NULL || myDT != *fileDT) && I.
dataMode >=
DATA )
1151 o <<
"Image type : ";
1153 o <<
"Fourier-space image" << std::endl;
1155 o <<
"Real-space image" << std::endl;
1159 size_t xdim, ydim, zdim, ndim;
1161 o <<
"Dimensions : " << ndim <<
" x " << zdim <<
" x " << ydim <<
" x " << xdim;
1162 o <<
" ((N)Objects x (Z)Slices x (Y)Rows x (X)Columns)" << std::endl;
1168 o <<
"Sampling rate : " << std::endl;
1169 o <<
" X-rate (Angstrom/pixel) = " << sampling << std::endl;
1171 o <<
" Y-rate (Angstrom/pixel) = " << sampling << std::endl;
1173 o <<
" Z-rate (Angstrom/pixel) = " << sampling << std::endl;
1176 std::stringstream oGeo;
1180 oGeo <<
"Euler angles : " << std::endl;
1181 oGeo <<
" Phi (rotation around Z axis) = " << I.
rot() << std::endl;
1182 oGeo <<
" Theta (tilt, second rotation around new Y axis) = " << I.
tilt() << std::endl;
1183 oGeo <<
" Psi (third rotation around new Z axis) = " << I.
psi() << std::endl;
1187 oGeo <<
"Origin Offsets : " << std::endl;
1188 oGeo <<
" Xoff (origin offset in X-direction) = " << I.
Xoff() << std::endl;
1189 oGeo <<
" Yoff (origin offset in Y-direction) = " << I.
Yoff() << std::endl;
1190 oGeo <<
" Zoff (origin offset in Z-direction) = " << I.
Zoff() << std::endl;
1193 oGeo <<
"Scale : " <<I.
scale() << std::endl;
1195 oGeo <<
"Weight : " << I.
weight() << std::endl;
1197 oGeo <<
"Flip : " << I.
flip() << std::endl;
1199 if (!oGeo.str().empty())
1200 o <<
"--- Geometry ---" << std::endl << oGeo.str();
bool IsLittleEndian(void)
double psi(const size_t n=0) const
double Zoff(const size_t n=0) const
const T & getValueOrDefault(MDLabel label, const T &def) const
double rot(const size_t n=0) const
double weight(const size_t n=0) const
T & getValue(MDLabel label)
double tilt(const size_t n=0) const
double Yoff(const size_t n=0) const
double scale(const size_t n=0) const
std::string datatype2StrLong(DataType datatype)
bool individualContainsLabel(MDLabel label) const
DataType datatype() const
double Xoff(const size_t n=0) const
bool flip(const size_t n=0) const
virtual DataType myT() const =0
void getDimensions(size_t &Xdim, size_t &Ydim, size_t &Zdim, size_t &Ndim) const