BDS Public
BdsApi 4.0.1
This is the Blacknest BDS API.
Loading...
Searching...
No Matches

Data file convertor for IMS format files. More...

#include <BdsDataFileIms.h>

Inheritance diagram for Bds::DataFileIms:
Bds::DataFile

Public Member Functions

 DataFileIms ()
 
BError open (BString fileName, BString mode)
 Open the file for read or write.
 
BError close ()
 Close the file.
 
DataOrder getDataOrder ()
 Get the expected order of writing data, by sample or by channel.
 
int getFeatures ()
 Get bitmask of supported features.
 
BError setInfo (const DataInfo &dataInfo, const ChannelInfos &channelInfos, WriteOptionsList options=WriteOptionNone)
 Set information on data for write.
 
BError start (BUInt channel, BUInt segment)
 Start writing next segment of data.
 
BError writeData (const DataBlock &data)
 Write a block of data.
 
BError end ()
 End write segment.
 
BError getMetaData (ChannelInfos &channelInfos, BUInt32 options, BList< DataError > &errors)
 Return all known MetaData in the file.
 
- Public Member Functions inherited from Bds::DataFile
 DataFile ()
 
virtual ~DataFile ()
 
virtual void init ()
 Initialise.
 
virtual BError open (BString fileName, BString mode)
 Open the file for read or write.
 
virtual BError close ()
 Close the file.
 
virtual BError setFormat (BString format)
 Set the sub-format.
 
virtual BString getFileName ()
 Return the file name.
 
virtual DataOrder getDataOrder ()
 Get the expected order of writing data, by sample or by channel.
 
virtual int getFeatures ()
 Get bitmask of supported features.
 
virtual BString getFixesInfo ()
 Get readable list of fixes that can be applied to faulty data files.
 
void getNotices (BStringList &notices)
 Get a list of any notices.
 
virtual BError setInfo (const DataInfo &dataInfo, const ChannelInfos &channelInfos, WriteOptionsList options=WriteOptionNone)
 Set information on data for write.
 
virtual BError start (BUInt channel, BUInt segment)
 Start writing next segment of data.
 
virtual BError writeData (const DataBlock &data)
 Write a block of data.
 
virtual BError end ()
 End write segment.
 
virtual BError flush ()
 Flush data to disk.
 
virtual BError fileNameProcess ()
 Parse the file name for a date/time.
 
virtual BError getFormat (BString &format)
 Get sub-format.
 
virtual BError getInfo (DataInfo &dataInfo, DataFileOptions options, BList< DataError > &errors)
 Get info on data.
 
virtual BError seekBlock (BUInt32 channel, BUInt segment, BTimeStamp time, BUInt32 &blockNumber, BUInt64 &sampleNumber, DataBlock &data)
 Find requested block on given channel given a time.
 
virtual BError readData (BUInt32 channel, BUInt segment, BUInt32 blockNumber, DataBlock &dataBlock)
 Read a block.
 
virtual BError getMetaData (ChannelInfos &channelInfos, BUInt32 options, BList< DataError > &errors)
 Return all known MetaData in the file.
 
void dataErrorFixup (const DataInfo &dataInfo, BList< DataError > &errors)
 Fixup data errors, mainly start/end times to be within data.
 
BInt64 timeCompare (BTimeStamp t1, BTimeStamp t2, BUInt diff)
 Compare timestamps with a margin.
 
int duplicateCheck (const DataBlock &data1, const DataBlock &data2, BUInt channel=0)
 Check if blocks are duplicates.
 
BUInt64 getFilePosition ()
 

Static Public Member Functions

static DataFormats getFormats ()
 
- Static Public Member Functions inherited from Bds::DataFile
static DataFormats getFormats ()
 Get list of supported formats.
 

Additional Inherited Members

- Public Types inherited from Bds::DataFile
enum  DataOrder { DataOrderUnknown , DataOrderAll , DataOrderSample , DataOrderChannel }
 
enum  Features { FeatureNone = 0x00 , FeatureCanWrite = 0x01 , FeatureCanRead = 0x02 }
 
enum  WriteOptionsList { WriteOptionNone = 0x00 , WriteOptionSensorData = 0x01 , WriteOptionNoMetadata = 0x02 }
 
enum  ReadOptionsList {
  ReadOptionNone = 0x00 , ReadOptionValidate = 0x01 , ReadOptionFileNameProcess = 0x02 , ReadOptionFixCorruptions = 0x04 ,
  ReadOptionReorder = 0x08 , ReadOptionDeleteDuplicates = 0x10 , ReadOptionInfoExtra = 0x20 , ReadOptionIgnoreSamplerate = 0x40 ,
  ReadOptionPrintBlocks = 0x80 , ReadOptionFixSampleRate = 0x100
}
 
- Protected Attributes inherited from Bds::DataFile
BString ofileName
 
BString omode
 
BTimeStamp ofileNameTime
 
BFile ofile
 
BString oformat
 
BStringList onotices
 

Detailed Description

Data file convertor for IMS format files.

Constructor & Destructor Documentation

◆ DataFileIms()

Bds::DataFileIms::DataFileIms ( )

Member Function Documentation

◆ open()

BError Bds::DataFileIms::open ( BString  fileName,
BString  mode 
)
virtual

Open the file for read or write.

Parameters
fileNameThe filename to open. Can be a full path or relative path to the current working directory
modeThe open mode. Can be "r" or "w".

Opens a file of the gievn file format

Reimplemented from Bds::DataFile.

◆ close()

BError Bds::DataFileIms::close ( )
virtual

Close the file.

Reimplemented from Bds::DataFile.

◆ getDataOrder()

DataFile::DataOrder Bds::DataFileIms::getDataOrder ( )
virtual

Get the expected order of writing data, by sample or by channel.

Reimplemented from Bds::DataFile.

◆ getFeatures()

int Bds::DataFileIms::getFeatures ( )
virtual

Get bitmask of supported features.

Returns a bit mask of the data converters featurs from the set FeatureCanWrite = 0x01 and FeatureCanRead = 0x02

Reimplemented from Bds::DataFile.

◆ setInfo()

BError Bds::DataFileIms::setInfo ( const DataInfo dataInfo,
const ChannelInfos channelInfos,
WriteOptionsList  options = WriteOptionNone 
)
virtual

Set information on data for write.

Parameters
dataInfoInfo on the Sensor data channels to be written
channelInfosThe metadata for the data channels
optionsA bitmask of options including: WriteOptionSensorData, WriteOptionNoMetadata WriteOptionSensorData: Writes Sensor data to the file WriteOptionNoMetadata: Disable the writing of Metadata

This function provides the information to create and write to a data file of this given format.

Reimplemented from Bds::DataFile.

◆ start()

BError Bds::DataFileIms::start ( BUInt  channel,
BUInt  segment 
)
virtual

Start writing next segment of data.

Parameters
channelThe Channel number, 0 for all channels if multiple channel
segmentThe data segment number

This starts writing a contiguous time segment of data to the file. It might write a section header etc depending of the file format

Reimplemented from Bds::DataFile.

◆ writeData()

BError Bds::DataFileIms::writeData ( const DataBlock data)
virtual

Write a block of data.

Parameters
dataA block of data

This writes a block of data to the file

Reimplemented from Bds::DataFile.

◆ end()

BError Bds::DataFileIms::end ( )
virtual

End write segment.

This defines the end of a data segment.

Reimplemented from Bds::DataFile.

◆ getMetaData()

BError Bds::DataFileIms::getMetaData ( ChannelInfos channelInfos,
BUInt32  options,
BList< DataError > &  errors 
)
virtual

Return all known MetaData in the file.

Parameters
channelInfosThe Metadata in the file is returned in this
optionsThis operators similarly to the getInfo options although some features are not relevent
errorsReturns a list of errors and/or warnings

This function is similar to getInfo except that it returns the list of Channel metadata in the file if any. Only certain formats can provide this.

Reimplemented from Bds::DataFile.

◆ getFormats()

DataFormats Bds::DataFileIms::getFormats ( )
static

The documentation for this class was generated from the following files: