31 #define PIFHEADERSIZE sizeof(PIFDataHeader) // size of EM file header 38 ". Error message: %s",
filename.c_str() ,strerror(errno)));
51 switch (mainHeader.mode)
79 "If you're interested in this feature, please contact us at xmipp@cnb.csic.es \n" 80 "and send us an example image file to help implementing.");
84 "If you're interested in this feature, please contact us at xmipp@cnb.csic.es \n" 85 "and send us an example image file to help implementing.", mainHeader.mode));
92 if (select_img > (
size_t)mainHeader.numImages)
99 aDim.
zdim = mainHeader.nz;
100 aDim.
ydim = mainHeader.ny;
101 aDim.
xdim = mainHeader.nx;
115 size_t imgEnd = (select_img !=
ALL_IMAGES) ? imgStart + 1 : aDim.
ndim;
122 for (
size_t i = 0;
i < imgEnd-imgStart;
i++)
127 for (
size_t n = 0,
i = imgStart;
i < imgEnd; ++
i, ++
n )
129 if (fseek(
fimg, headerOffset +
i*imageSize, SEEK_SET ) != 0)
Case or algorithm not implemented yet.
bool IsLittleEndian(void)
#define REPORT_ERROR(nerr, ErrormMsg)
virtual void readData(FILE *fimg, size_t select_img, DataType datatype, size_t pad)=0
Couldn't write to file.
void setValue(const MDObject &object) override
void swapPage(char *page, size_t pageNrElements, DataType datatype, int swap=1)
std::vector< std::unique_ptr< MDRow > > MD
Input/Output general error.
int readPIF(size_t select_img)
int writePIF(size_t select_img=ALL_IMAGES, bool isStack=false, int mode=WRITE_OVERWRITE)
virtual void setDimensions(int Xdim, int Ydim, int Zdim, size_t Ndim)=0
Couldn't read from file.
static MDRowVec emptyHeaderVec()
DataType datatype() const
String formatString(const char *format,...)
#define IMG_INDEX(select_img)
size_t gettypesize(DataType type)
Returns memory size of datatype.