diff --git a/src/Data/MetaData.cpp b/src/Data/MetaData.cpp index 5fe3124..753cc44 100644 --- a/src/Data/MetaData.cpp +++ b/src/Data/MetaData.cpp @@ -84,3 +84,24 @@ TimeStampsPointer MetaData::getTimeStamps() const { return mTimeStamps; } + +double MetaData::getDacDelay() const +{ + return mDacDelay; +} + +void MetaData::setDacDelay(double aDacDelay) +{ + mDacDelay = aDacDelay; +} + +double MetaData::getFilterByPass() const +{ + return mFilterByPass; +} + +void MetaData::setFilterByPass(double aFilterByPass) +{ + mFilterByPass = aFilterByPass; +} + diff --git a/src/Data/MetaData.h b/src/Data/MetaData.h index 6db7c4c..ecface0 100644 --- a/src/Data/MetaData.h +++ b/src/Data/MetaData.h @@ -28,6 +28,8 @@ public: ReceiverIndicesPointer getReceiverIndices() const; unsigned short getAperturePositionNumber() const; TimeStampsPointer getTimeStamps() const; + double getDacDelay() const; + double getFilterByPass() const; private: void setDataType(const std::string& aDataType); @@ -38,6 +40,8 @@ private: void setReceiverIndices(ReceiverIndicesPointer aReceiverIndices); void setAperturePositionNumber(unsigned short aAperturePositionNumber); void setTimeStamps(TimeStampsPointer aTimeStamps); + void setDacDelay(double aDacDelay); + void setFilterByPass(double aFilterByPass); private: std::string mDataType; @@ -48,6 +52,8 @@ private: ReceiverIndicesPointer mReceiverIndices; unsigned short mAperturePositionNumber; TimeStampsPointer mTimeStamps; + double mDacDelay; + double mFilterByPass; friend class MetaDataReader; }; diff --git a/src/DataReader/MetaDataReader.cpp b/src/DataReader/MetaDataReader.cpp index 4a0b7b6..9e091ed 100644 --- a/src/DataReader/MetaDataReader.cpp +++ b/src/DataReader/MetaDataReader.cpp @@ -39,7 +39,7 @@ MetaData MetaDataReader::getMetaDataFromKIT(const std::string& aFilePath,std::sh if(samplerateVar!=nullptr) { result.setSamplerate(static_cast(*reinterpret_cast(samplerateVar->data))); - } + } matvar_t* metaDataVar = Mat_VarRead(matFile,"MetaData"); if(metaDataVar !=nullptr) { @@ -49,6 +49,17 @@ MetaData MetaDataReader::getMetaDataFromKIT(const std::string& aFilePath,std::sh { result.setMeasurementID(MatlabHelper::getMatlabString(measurementIDVar)); } + //DACDelay + matvar_t* dacDelayVar = Mat_VarGetStructFieldByName(metaDataVar,"DACDelay",0); + if(dacDelayVar!=nullptr) + { + result.setDacDelay(*reinterpret_cast(dacDelayVar->data)); + } + matvar_t* filterByPassVar = Mat_VarGetStructFieldByName(metaDataVar,"FilterBypass",0); + if(filterByPassVar!=nullptr) + { + result.setFilterByPass(*reinterpret_cast(filterByPassVar->data)); + } //AperturePosition result.setAperturePositionNumber(aShotList->getMotorPositionSize()); } @@ -127,6 +138,14 @@ MetaData MetaDataReader::getMetaDataFromHJ(const std::string& aConfigBinPath, co { result.setSampleNumber(amcBoardConfig.at("Shot length").get()); } + if(amcBoardConfig.contains("DAC Delay")) + { + result.setDacDelay(amcBoardConfig.at("DAC Delay").get()); + } + if(amcBoardConfig.contains("Filter")) + { + result.setFilterByPass(amcBoardConfig.at("Filter").get()); + } } std::ifstream stream;