ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
WaveformDescriptor Class Reference

Waveform descriptor. More...

#include <ecvWaveform.h>

Inheritance diagram for WaveformDescriptor:
Collaboration diagram for WaveformDescriptor:

Public Member Functions

 WaveformDescriptor ()
 Default constructor. More...
 
bool operator!= (const WaveformDescriptor &d) const
 Difference operator. More...
 
bool operator== (const WaveformDescriptor &d) const
 Equivalence operator. More...
 
bool isSerializable () const override
 Returns whether object is serializable of not. More...
 
bool toFile (QFile &out, short dataVersion) const override
 Saves data to binary stream. More...
 
short minimumFileVersion () const override
 Returns the minimum file version required to save this instance. More...
 
bool fromFile (QFile &in, short dataVersion, int flags, LoadedIDMap &oldToNewIDMap) override
 Loads data from binary stream. More...
 
- Public Member Functions inherited from ccSerializableObject
virtual ~ccSerializableObject ()=default
 Destructor. More...
 

Public Attributes

uint32_t numberOfSamples
 Number of samples. More...
 
uint32_t samplingRate_ps
 Sampling rate in pico seconds. More...
 
double digitizerGain
 
double digitizerOffset
 
uint8_t bitsPerSample
 Number of bits per sample. More...
 

Additional Inherited Members

- Public Types inherited from ccSerializableObject
enum  DeserializationFlags { DF_POINT_COORDS_64_BITS , DF_SCALAR_VAL_32_BITS = 2 }
 Deserialization flags (bit-field) More...
 
typedef QMultiMap< unsigned, unsigned > LoadedIDMap
 Map of loaded unique IDs (old ID --> new ID) More...
 
- Static Public Member Functions inherited from ccSerializableObject
static bool WriteError ()
 Sends a custom error message (write error) and returns 'false'. More...
 
static bool ReadError ()
 Sends a custom error message (read error) and returns 'false'. More...
 
static bool MemoryError ()
 Sends a custom error message (not enough memory) and returns 'false'. More...
 
static bool CorruptError ()
 Sends a custom error message (corrupted file) and returns 'false'. More...
 

Detailed Description

Waveform descriptor.

Definition at line 23 of file ecvWaveform.h.

Constructor & Destructor Documentation

◆ WaveformDescriptor()

WaveformDescriptor::WaveformDescriptor ( )

Default constructor.

Member Function Documentation

◆ fromFile()

bool WaveformDescriptor::fromFile ( QFile &  in,
short  dataVersion,
int  flags,
LoadedIDMap oldToNewIDMap 
)
overridevirtual

Loads data from binary stream.

Parameters
ininput file (already opened)
dataVersionfile version (for version-specific deserialization)
flagsdeserialization flags (see ccSerializableObject::DeserializationFlags)
oldToNewIDMapmap to link old IDs with new IDs
Returns
success
Note: When implementing, use dataVersion checks to handle different
versions:
  • if (dataVersion >= X) { read new field } else { use default value } This ensures forward compatibility with older file formats.

Reimplemented from ccSerializableObject.

◆ isSerializable()

bool WaveformDescriptor::isSerializable ( ) const
inlineoverridevirtual

Returns whether object is serializable of not.

Reimplemented from ccSerializableObject.

Definition at line 35 of file ecvWaveform.h.

◆ minimumFileVersion()

short WaveformDescriptor::minimumFileVersion ( ) const
overridevirtual

Returns the minimum file version required to save this instance.

To be overridden by subclasses to indicate their minimum required version. This enables the system to determine:

  • Forward compatibility: newer software can read older files (dataVersion check in fromFile)
  • Backward compatibility: determine minimum version needed to save current data
    Returns
    minimum file version required for this object

Implements ccSerializableObject.

◆ operator!=()

bool WaveformDescriptor::operator!= ( const WaveformDescriptor d) const

Difference operator.

◆ operator==()

bool WaveformDescriptor::operator== ( const WaveformDescriptor d) const
inline

Equivalence operator.

Definition at line 32 of file ecvWaveform.h.

◆ toFile()

bool WaveformDescriptor::toFile ( QFile &  out,
short  dataVersion 
) const
overridevirtual

Saves data to binary stream.

Parameters
outoutput file (already opened)
dataVersiontarget file version (for forward/backward compatibility)
Returns
success

Reimplemented from ccSerializableObject.

Member Data Documentation

◆ bitsPerSample

uint8_t WaveformDescriptor::bitsPerSample

Number of bits per sample.

Definition at line 49 of file ecvWaveform.h.

Referenced by define_ccWaveform(), LASFWFFilter::loadFile(), and ParseWavepacketDescriptorVlr().

◆ digitizerGain

double WaveformDescriptor::digitizerGain

Digitizer gain (VOLTS = OFFSET + GAIN * Raw_Waveform_Amplitude)

Definition at line 45 of file ecvWaveform.h.

Referenced by define_ccWaveform(), LASFWFFilter::loadFile(), and ParseWavepacketDescriptorVlr().

◆ digitizerOffset

double WaveformDescriptor::digitizerOffset

Digitizer offset (VOLTS = OFFSET + GAIN * Raw_Waveform_Amplitude)

Definition at line 47 of file ecvWaveform.h.

Referenced by define_ccWaveform(), LASFWFFilter::loadFile(), and ParseWavepacketDescriptorVlr().

◆ numberOfSamples

uint32_t WaveformDescriptor::numberOfSamples

Number of samples.

Definition at line 43 of file ecvWaveform.h.

Referenced by define_ccWaveform(), LASFWFFilter::loadFile(), and ParseWavepacketDescriptorVlr().

◆ samplingRate_ps

uint32_t WaveformDescriptor::samplingRate_ps

Sampling rate in pico seconds.

Definition at line 44 of file ecvWaveform.h.

Referenced by define_ccWaveform(), ccWaveWidget::init(), LASFWFFilter::loadFile(), and ParseWavepacketDescriptorVlr().


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