11#include "MantidNexus/DllConfig.h"
12#include <boost/date_time/posix_time/posix_time.hpp>
14#include <nexus/NeXusFile.hpp>
37 int m_nexusLogCount = 0;
42 void openFirstNXentry(NeXus::File &handle);
43 bool readMuonLogData(NeXus::File &handle);
49 std::time_t m_startTime_time_t = 0;
50 std::time_t
to_time_t(
const boost::posix_time::ptime &t)
58 if (t == boost::posix_time::neg_infin)
60 else if (t == boost::posix_time::pos_infin)
62 boost::posix_time::ptime start(boost::gregorian::date(1970, 1, 1));
63 return (t - start).total_seconds();
65 void readPeriodInfo(NeXus::File &handle);
73 void readFromFile(
const std::string &filename);
74 void readLogData(
const std::string &filename);
75 void getTimeChannels(
float *timebnds,
76 const int &nbnds)
const;
79 int numberOfLogs()
const;
80 int getLogLength(
const int i)
const;
81 std::string getLogName(
const int i)
const;
82 void getLogValues(
const int &logNumber,
const int &logSequence, std::time_t &logTime,
84 void getLogStringValues(
const int &logNumber,
const int &logSequence, std::time_t &logTime,
86 bool logTypeNumeric(
const int i)
const;
87 std::string logUnits(
const int i)
const;
96 int m_numDetectors = 0;
97 std::string getInstrumentName()
const;
98 int m_numPeriodSequences = 0;
double value
The value of the point.
MuunNexusReader opens a Nexus file and reads certain fields expected for a ISIS Muon data file (old f...
std::string m_framesPeriodsRaw
std::vector< std::string > m_logNames
stores name read from file
std::vector< std::vector< std::string > > m_logStringValues
array of string values for i'th NXlog section
std::string m_periodsOutput
std::string m_nexusSampleName
sample name read from Nexus
std::string m_framesPeriodsRequested
std::vector< std::vector< float > > m_logTimes
arrys of times for i'th NXlog section
std::time_t to_time_t(const boost::posix_time::ptime &t)
std::string m_periodNames
std::vector< float > m_correctedTimes
temp store for corrected times
std::string getSampleName() const
std::vector< bool > m_logType
true if i'th log is numeric
std::vector< int > m_detectorGroupings
detector grouping info
std::string m_periodTypes
std::vector< std::string > m_logUnits
std::string m_nexusInstrumentName
name read from nexus file
~MuonNexusReader()=default
Default Destructor.
std::string m_startTime
string startTime which must be read from Nexus
std::string m_periodsCounts
std::vector< int > m_counts
temp store of histogram data
std::vector< std::vector< float > > m_logValues
array of values for i'th NXlog section
MuonNexusReader()=default
Default constructor.