| 
    MeVisLab Toolbox Reference
    
   | 
 
A structure describing the common data header of an M1_Data and an M2_Data section of a WaterColumn data package. More...
#include <mlWaterColumnStructures.h>
  
Classes | |
| struct | DoubleMLint16 | 
| Vector entry for storage for data from M2 sections.  More... | |
Public Member Functions | |
| WaterColumnM1OrM2 () | |
| Default constructor.   | |
| ~WaterColumnM1OrM2 () override | |
| Default destructor.   | |
| std::string | getSectionName () const override | 
| Get name of section as std::string.   | |
| void | reset () override | 
| Resets all members to construction state.   | |
| void | mapMxSectionData () const | 
| Actually load the M1/M2 section data.   | |
| void | clearMxSectionData () const | 
| Unload magnitude and/or phase data from arrays and really try to unmap the array memory.   | |
| void | unmapMxSectionDataHint () const | 
| If memory saving mode is enabled then unload magnitude and/or phase data from arrays; may be ignored if memory saving is off.   | |
| MLuint64 | read (R2SonicWCLoader &reader, MLuint64 &fileReadPos) | 
| Read section from a file with help of ByteDataReader reader and increase fileReadPos appropriately.   | |
| std::string | getAsString (const MLint maxBeams=-1, const MLint maxSamplesPerBeam=-1, std::string prefix="", const std::string &sep=" ") const | 
| See WaterColumnDataSet.getAsString for documentation.   | |
  Public Member Functions inherited from ml::R2SonicWC::WaterColumnSectionBase | |
| WaterColumnSectionBase () | |
| Default constructor.   | |
| virtual | ~WaterColumnSectionBase () | 
| Default destructor.   | |
| WaterColumnSectionBase (const WaterColumnSectionBase &)=default | |
| Default copy constructor.   | |
| WaterColumnSectionBase & | operator= (const WaterColumnSectionBase &)=default | 
| Default assignment operator.   | |
Public Attributes | |
| WaterColumnM1AndM2Header | m1OrM2CommonHeader | 
| Common part of M1 and M2 section data.   | |
| MLuint64 | fileDataReadPos | 
| Location of M1/M2 data in file.   | |
| std::vector< MLuint16 > | magnitudeData | 
| Values 0 to 65535 map non-linearly (due to TVG scaling and possible gain compression) to signal amplitude magnitude data (typical example: 256 beams each containing 36 two-byte structs, 16 kilobytes) 16-bit magnitude data (present only during "magnitude-only" water column data mode, many per ping, you assemble them into complete ping data)   | |
| std::vector< DoubleMLint16 > | magnitudePhaseData | 
| Magnitude and phase data (typical example: 256 beams each containing 36 four-byte structs, 36 kilobytes) 16-bit magnitude and phase data (present only during "magnitude and phase" water column data mode, many per ping, you assemble them into complete ping data)   | |
| bool | saveMemory | 
| Flag to indicate whether memory save mode is enabled or not.   | |
  Public Attributes inherited from ml::R2SonicWC::WaterColumnSectionBase | |
| MLuint64 | posInFile | 
| Location of section in file.   | |
| MLuint16 | sectionName | 
| 'WC', 'H0', 'A1', 'M1', 'M2'   | |
Protected Attributes | |
| R2SonicWCLoader * | _reader | 
| Pointer to the reader which loaded this file; it must (and must be valid during entire life time) to be able to perform a delayed (un/re)load of magnitude and/or phase data.   | |
A structure describing the common data header of an M1_Data and an M2_Data section of a WaterColumn data package.
Definition at line 229 of file mlWaterColumnStructures.h.
| ml::R2SonicWC::WaterColumnM1OrM2::WaterColumnM1OrM2 | ( | ) | 
Default constructor.
      
  | 
  override | 
Default destructor.
| void ml::R2SonicWC::WaterColumnM1OrM2::clearMxSectionData | ( | ) | const | 
Unload magnitude and/or phase data from arrays and really try to unmap the array memory.
| std::string ml::R2SonicWC::WaterColumnM1OrM2::getAsString | ( | const MLint | maxBeams = -1,  | 
        
| const MLint | maxSamplesPerBeam = -1,  | 
        ||
| std::string | prefix = "",  | 
        ||
| const std::string & | sep = " "  | 
        ||
| ) | const | 
See WaterColumnDataSet.getAsString for documentation.
      
  | 
  overridevirtual | 
Get name of section as std::string.
Implements ml::R2SonicWC::WaterColumnSectionBase.
| void ml::R2SonicWC::WaterColumnM1OrM2::mapMxSectionData | ( | ) | const | 
Actually load the M1/M2 section data.
| MLuint64 ml::R2SonicWC::WaterColumnM1OrM2::read | ( | R2SonicWCLoader & | reader, | 
| MLuint64 & | fileReadPos | ||
| ) | 
Read section from a file with help of ByteDataReader reader and increase fileReadPos appropriately.
      
  | 
  overridevirtual | 
Resets all members to construction state.
Reimplemented from ml::R2SonicWC::WaterColumnSectionBase.
| void ml::R2SonicWC::WaterColumnM1OrM2::unmapMxSectionDataHint | ( | ) | const | 
If memory saving mode is enabled then unload magnitude and/or phase data from arrays; may be ignored if memory saving is off.
      
  | 
  mutableprotected | 
Pointer to the reader which loaded this file; it must (and must be valid during entire life time) to be able to perform a delayed (un/re)load of magnitude and/or phase data.
Otherwise we have no chance to limit memory usage on large files.
Definition at line 268 of file mlWaterColumnStructures.h.
| MLuint64 ml::R2SonicWC::WaterColumnM1OrM2::fileDataReadPos | 
Location of M1/M2 data in file.
Definition at line 241 of file mlWaterColumnStructures.h.
| WaterColumnM1AndM2Header ml::R2SonicWC::WaterColumnM1OrM2::m1OrM2CommonHeader | 
Common part of M1 and M2 section data.
Definition at line 238 of file mlWaterColumnStructures.h.
      
  | 
  mutable | 
Values 0 to 65535 map non-linearly (due to TVG scaling and possible gain compression) to signal amplitude magnitude data (typical example: 256 beams each containing 36 two-byte structs, 16 kilobytes) 16-bit magnitude data (present only during "magnitude-only" water column data mode, many per ping, you assemble them into complete ping data)
size=M1_Beams*M1_Samples if in M1 mode, otherwise empty.
Definition at line 247 of file mlWaterColumnStructures.h.
      
  | 
  mutable | 
Magnitude and phase data (typical example: 256 beams each containing 36 four-byte structs, 36 kilobytes) 16-bit magnitude and phase data (present only during "magnitude and phase" water column data mode, many per ping, you assemble them into complete ping data)
size=M1_Beams*M1_Samples if in M2 mode, otherwise empty.
Definition at line 259 of file mlWaterColumnStructures.h.
| bool ml::R2SonicWC::WaterColumnM1OrM2::saveMemory | 
Flag to indicate whether memory save mode is enabled or not.
Definition at line 262 of file mlWaterColumnStructures.h.