19 #ifndef ATOMPROBE_FILES_H 20 #define ATOMPROBE_FILES_H 82 inline const char *
getAtoErrString(
unsigned int errCode) {
return ATO_ERR_STRINGS[errCode];};
100 unsigned int loadPosFile(std::vector<IonHit> &posIons,
const char *posFile);
109 unsigned int loadPosFile(std::vector<IonHit> &posIons,
110 const char *posFile,
unsigned int nSamplesMax);
121 unsigned int savePosFile(
const std::vector<Point3D> &points,
float mass,
const char *name,
bool append=
false);
124 unsigned int savePosFile(
const std::vector<IonHit> &data,
const char *name,
bool append=
false);
131 unsigned int saveTapsimBin(
const std::vector<IonHit> &posIons,std::ostream &f);
135 unsigned int saveTapsimBin(
const std::vector<IonHit> &posIons,
const char *filename);
144 size_t loadEposFile(std::vector<EPOS_ENTRY> &outData,
const char *filename );
162 unsigned int chunkSize,
unsigned int chunkOffset,
unsigned int &nEntriesLeft);
179 std::vector<std::vector<float> > &dataVec,std::vector<std::string> &headerVec,
180 const char *delim=
"\t,",
bool allowNan=
true,
bool allowConvFails=
false,
unsigned int headerCount=-1);
277 unsigned int &badLine,
unsigned int &
progress,
278 std::atomic<bool> &wantAbort,
279 unsigned int nDelayLines=2,
bool strictMode=
false);
295 std::vector<ATO_ENTRY> &ions,
unsigned int forceEndian=0);
const char * RECORDREAD_ERR_STRINGS[]
float flightPath
The flight path to the virtual (or real) projected tip image.
float voltage
Standing Voltage applied to specimen (V)
const char * OPS_ENUM_ERRSTRINGS[]
const char * getPosFileErrString(unsigned int errMesg)
unsigned int loadATOFile(const char *fileName, std::vector< ATO_ENTRY > &ions, unsigned int forceEndian=0)
Load a LAWATAP "ATO" file.
Data structure that contains the experiment information present in a 3Dap file.
unsigned int saveTapsimBin(const std::vector< IonHit > &posIons, std::ostream &f)
Write a tapsim file from a vector of IonHits.
const char * ATO_ERR_STRINGS[]
Human readable error messages for use with ATO reader return values.
THREEDAP_DATA params
Experiment parameters.
float pulseVolt
Pulse voltage applied to specimen (V)
size_t loadEposFile(std::vector< EPOS_ENTRY > &outData, const char *filename)
Load an entire "EPOS" File.
unsigned int loadTextData(const char *cpFilename, std::vector< std::vector< float > > &dataVec, std::vector< std::string > &headerVec, const char *delim="\", bool allowNan=true, bool allowConvFails=false, unsigned int headerCount=-1)
Load a CSV, TSV or similar text file. Assumes "C" Locale for input (ie "." as decimal separator)...
unsigned int detectorChannels
The number of channels on the detector.
unsigned int savePosFile(const std::vector< Point3D > &points, float mass, const char *name, bool append=false)
Save a vector of Point3Ds into a pos file, using a fixed mass, return nonzero on error.
std::vector< VOLTAGE_DATA > voltageData
Voltage information.
unsigned int readPosapOps(const char *file, THREEDAP_EXPERIMENT &data, unsigned int &badLine, unsigned int &progress, std::atomic< bool > &wantAbort, unsigned int nDelayLines=2, bool strictMode=false)
Function to read POSAP "OPS" files.
std::vector<::std::vector< SINGLE_HIT > > eventData
vector of event vectors. Each interior event vector describes a group of hits on one pulse ...
unsigned int loadPosFile(std::vector< IonHit > &posIons, const char *posFile)
Load a pos file directly into a single ion list.
float tZero
Time offset for pulse, in nanoseconds.
float detectorRadius
The size of the detector, in mm.
float alpha
Pulse coupling coefficient (1 of 2)
float beta
Pulse coupling coefficient (2 of 2)
float tof
Reported time of flight.
struct AtomProbe::ATO_ENTRY ATO_ENTRY
float beta
Coupling coefficient to specimen.
size_t nextHitGroupOffset
FIXME: Document me.
std::vector< unsigned long long > eventPulseNumber
The pulse number associated with an event group.
const char * getRecordReadErrString(unsigned int errCode)
const char * getAtoErrString(unsigned int errCode)
Voltage data structure – these updates occur periodically during the experiment. ...
size_t chunkLoadEposFile(std::vector< EPOS_ENTRY > &outData, const char *filename, unsigned int chunkSize, unsigned int chunkOffset, unsigned int &nEntriesLeft)
Load an "EPOS" file, with a maximum chunk size.