Xmipp  v3.23.11-Nereus
Classes | Functions
Collaboration diagram for Stochastic Proximity Embedding:

Classes

class  SPE
 

Functions

int readSPE (size_t select_img, bool isStack=false)
 
int writeSPE (size_t select_img, bool isStack=false, int mode=WRITE_OVERWRITE)
 
int ImageBase::readSPE (size_t select_img, bool isStack=false)
 
int ImageBase::writeSPE (size_t select_img, bool isStack=false, int mode=WRITE_OVERWRITE)
 

Detailed Description

Function Documentation

◆ readSPE() [1/2]

int readSPE ( size_t  select_img,
bool  isStack = false 
)

SPE Reader

◆ readSPE() [2/2]

int ImageBase::readSPE ( size_t  select_img,
bool  isStack = false 
)
protected

SPE Reader

Definition at line 38 of file rwSPE.cpp.

39 {
40 
41  int _xDim,_yDim,_zDim;
42  size_t _nDim;
43 
44  short int aux;
45  fseek(fimg,42,SEEK_SET);
46  xmippFREAD(&aux, sizeof(short int), 1, fimg, swap );
47  _xDim = aux;
48  fseek(fimg,656,SEEK_SET);
49  xmippFREAD(&aux, sizeof(short int), 1, fimg, swap );
50  _yDim = aux;
51 
52  _zDim = 1;
53  _nDim = 1;
54 
55  // Map the parameters
56  setDimensions(_xDim, _yDim, _zDim, _nDim);
57 
58  offset = 4100;
60 
63  MDMainHeader.setValue(MDL_DATATYPE,(int)datatype);
64 
65  if (dataMode==HEADER) // Stop reading if not necessary
66  return 0;
67 
68  size_t imgStart = IMG_INDEX(select_img);
69  size_t imgEnd = (select_img != ALL_IMAGES) ? imgStart + 1 : _nDim;
70 
71  MD.clear();
72  for (size_t i = 0; i < imgEnd-imgStart; i++)
73  MD.push_back(std::unique_ptr<MDRowVec>(new MDRowVec(MDL::emptyHeaderVec())));
74  if( dataMode < DATA )
75  return 0;
76 
77  size_t pad = 0;
78 
79  readData(fimg, select_img, datatype, pad);
80 
81  return(0);
82 }
sampling rate in A/pixel (double)
sampling rate in A/pixel (double)
DataMode dataMode
virtual void readData(FILE *fimg, size_t select_img, DataType datatype, size_t pad)=0
void setValue(const MDObject &object) override
std::vector< std::unique_ptr< MDRow > > MD
if read from file original image datatype, this is an struct defined in image
#define i
virtual void setDimensions(int Xdim, int Ydim, int Zdim, size_t Ndim)=0
static MDRowVec emptyHeaderVec()
DataType
size_t xmippFREAD(void *dest, size_t size, size_t nitems, FILE *&fp, bool reverse)
MDRowVec MDMainHeader
DataType datatype() const
#define ALL_IMAGES
#define IMG_INDEX(select_img)

◆ writeSPE() [1/2]

int writeSPE ( size_t  select_img,
bool  isStack = false,
int  mode = WRITE_OVERWRITE 
)

SPE Writer

◆ writeSPE() [2/2]

int ImageBase::writeSPE ( size_t  select_img,
bool  isStack = false,
int  mode = WRITE_OVERWRITE 
)
protected

SPE Writer

Definition at line 84 of file rwSPE.cpp.

85 {
86  REPORT_ERROR(ERR_IMG_NOWRITE, "writeSPE is not implemented.");
87 }
#define REPORT_ERROR(nerr, ErrormMsg)
Definition: xmipp_error.h:211
Cannot write image to file.
Definition: xmipp_error.h:129