code::TDWRDataNetcdfWriter Class Reference

Inheritance diagram for code::TDWRDataNetcdfWriter:

code::RadarDataNetcdfWriter code::RadarDataAccumulator::ElevationHandler List of all members.

Detailed Description

TDWR has two more types of data which need to be written out to netcdf files.

Inherited from RadarDataNetcdfWriter

Author:
Lulin Song
Version:
Id
code_TDWRDataNetcdfWriter.h,v 1.12 2009/06/02 20:17:51 lakshman Exp


Public Types

 SignalToNoise = RadarDataNetcdfWriter::NumRadarDataTypes
 ConditionedVelocity
 ReflectivityLowPRF
 SignalToNoiseLowPRF
 NumTDWRDataTypes
enum  TDWRDataTypes {
  SignalToNoise = RadarDataNetcdfWriter::NumRadarDataTypes, ConditionedVelocity, ReflectivityLowPRF, SignalToNoiseLowPRF,
  NumTDWRDataTypes
}
 Reflectivity
 RawVelocity
 the typename for this is "AliasedVelocity"
 SpectrumWidth
 DealiasedVelocity
 the typename for this is "Velocity"
 Zdr
 Phi
 RhoHV
 SNRR
 SNRD
 NumRadarDataTypes
enum  RadarDataType {
  Reflectivity, RawVelocity, SpectrumWidth, DealiasedVelocity,
  Zdr, Phi, RhoHV, SNRR,
  SNRD, NumRadarDataTypes
}
 The NumRadarDataTypes is used to initialize the various stores. More...

Public Member Functions

 TDWRDataNetcdfWriter (InitSmartPtr< NetcdfEncoder > ne, const std::string &indexLB="")
virtual void processElevation (RadarDataAccumulator &)
 The elevation data may be obtained using the getReflectivity(), getVelocity() and getSpectrumWidth() methods on the accumulator.
virtual void processReflectivity (const RadialSet &)
virtual void processVelocity (const RadialSet &)
virtual void processSpectrumWidth (const RadialSet &)
virtual ~TDWRDataNetcdfWriter ()
void processSignalToNoise (const RadialSet &)
virtual void processZdr (const RadialSet &)
virtual void processPhi (const RadialSet &)
virtual void processRhoHV (const RadialSet &)
virtual void processSNRR (const RadialSet &)
virtual void processSNRD (const RadialSet &)
virtual void processVolumeStart (RadarDataAccumulator &)
 Perform any required processing on volume start.

Static Public Member Functions

static void setWriteElevationsOnly (bool flag)
 By default, this flag is false, so that montage records for virtual volumes get written out.
static void setAlignmentResolution (float alignmentAzimuthalResolution)
 By default, this is negative, so that radial sets are not aligned before they get written out.

Protected Member Functions

void cleanUp ()
 Empty everything in the virtualVolume vector.
virtual Index::Record getMontageRecord (const Angle &elev, const Index::Record &rec, const Time &vol_start_time, int virVolIdx)
 Get montage record according different data type.
virtual bool needWritevol (const RadialSet &rs)
 check to see if we need to write a 'vol' record
virtual void addVirtualVolume (const std::string &volType)
 Add new type of TDWRVirtualVolume.
virtual code::Index::Record writeRadialSet (const code::RadialSet &rs)
virtual Index::Record writeRadialSet (const RadialSet &)
void process (const RadialSet &rs, int virtualVolumeIndex)
 The work-horse method.
void notifyAs (Index::Record &rec, const std::string &newType)
 Modify the selections of this record and notify to the LB.

Protected Attributes

InitSmartPtr< NetcdfEncoder > ne
SmartPtr< IndexRecordNotifier > lb
Time m_volStartTime
Angle m_lastElevation
std::vector< SmartPtr< VirtualVolume > > virtualVolume


Member Enumeration Documentation

enum code::RadarDataNetcdfWriter::RadarDataType [inherited]

The NumRadarDataTypes is used to initialize the various stores.

However, you don't need to call process() on all the data types.

Author:
Lakshman
Version:
Id
code_RadarDataNetcdfWriter.h,v 1.15 2009/06/02 20:17:51 lakshman Exp
Enumerator:
Reflectivity 
RawVelocity  the typename for this is "AliasedVelocity"
SpectrumWidth 
DealiasedVelocity  the typename for this is "Velocity"
Zdr 
Phi 
RhoHV 
SNRR 
SNRD 
NumRadarDataTypes 

enum code::TDWRDataNetcdfWriter::TDWRDataTypes

Enumerator:
SignalToNoise 
ConditionedVelocity 
ReflectivityLowPRF 
SignalToNoiseLowPRF 
NumTDWRDataTypes 


Constructor & Destructor Documentation

code::TDWRDataNetcdfWriter::TDWRDataNetcdfWriter ( InitSmartPtr< NetcdfEncoder >  ne,
const std::string &  indexLB = "" 
)

virtual code::TDWRDataNetcdfWriter::~TDWRDataNetcdfWriter (  )  [virtual]


Member Function Documentation

virtual void code::TDWRDataNetcdfWriter::addVirtualVolume ( const std::string &  volType  )  [protected, virtual]

Add new type of TDWRVirtualVolume.

Reimplemented from code::RadarDataNetcdfWriter.

void code::TDWRDataNetcdfWriter::cleanUp (  )  [protected]

Empty everything in the virtualVolume vector.

virtual Index::Record code::TDWRDataNetcdfWriter::getMontageRecord ( const Angle &  elev,
const Index::Record &  rec,
const Time &  vol_start_time,
int  virVolIdx 
) [protected, virtual]

Get montage record according different data type.

Reimplemented from code::RadarDataNetcdfWriter.

virtual bool code::TDWRDataNetcdfWriter::needWritevol ( const RadialSet &  rs  )  [protected, virtual]

check to see if we need to write a 'vol' record

Reimplemented from code::RadarDataNetcdfWriter.

void code::RadarDataNetcdfWriter::notifyAs ( Index::Record &  rec,
const std::string &  newType 
) [protected, inherited]

Modify the selections of this record and notify to the LB.

void code::RadarDataNetcdfWriter::process ( const RadialSet &  rs,
int  virtualVolumeIndex 
) [protected, inherited]

The work-horse method.

It calls writeRadialSet, followed by update to the right virtual volume and writes to the montage record.

If the virtualVolumeIndex is negative, then the virtualVolume is not updated.

virtual void code::TDWRDataNetcdfWriter::processElevation ( RadarDataAccumulator  )  [virtual]

The elevation data may be obtained using the getReflectivity(), getVelocity() and getSpectrumWidth() methods on the accumulator.

By default, this method calls processReflectivty() processVelocity() and processSpectrumWidth() if the respective data are available.

Override if you want to be notified even if the data are invalid.

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

virtual void code::RadarDataNetcdfWriter::processPhi ( const RadialSet &   )  [virtual, inherited]

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

virtual void code::TDWRDataNetcdfWriter::processReflectivity ( const RadialSet &   )  [virtual]

Reimplemented from code::RadarDataNetcdfWriter.

virtual void code::RadarDataNetcdfWriter::processRhoHV ( const RadialSet &   )  [virtual, inherited]

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

void code::TDWRDataNetcdfWriter::processSignalToNoise ( const RadialSet &   ) 

virtual void code::RadarDataNetcdfWriter::processSNRD ( const RadialSet &   )  [virtual, inherited]

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

virtual void code::RadarDataNetcdfWriter::processSNRR ( const RadialSet &   )  [virtual, inherited]

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

virtual void code::TDWRDataNetcdfWriter::processSpectrumWidth ( const RadialSet &   )  [virtual]

Reimplemented from code::RadarDataNetcdfWriter.

virtual void code::TDWRDataNetcdfWriter::processVelocity ( const RadialSet &   )  [virtual]

Reimplemented from code::RadarDataNetcdfWriter.

virtual void code::RadarDataNetcdfWriter::processVolumeStart ( RadarDataAccumulator  )  [virtual, inherited]

Perform any required processing on volume start.

The time of the new volume may be obtained by using getVolumeStartTime() on the accumulator.

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

virtual void code::RadarDataNetcdfWriter::processZdr ( const RadialSet &   )  [virtual, inherited]

Reimplemented from code::RadarDataAccumulator::ElevationHandler.

static void code::RadarDataNetcdfWriter::setAlignmentResolution ( float  alignmentAzimuthalResolution  )  [inline, static, inherited]

By default, this is negative, so that radial sets are not aligned before they get written out.

static void code::RadarDataNetcdfWriter::setWriteElevationsOnly ( bool  flag  )  [inline, static, inherited]

By default, this flag is false, so that montage records for virtual volumes get written out.

virtual Index::Record code::RadarDataNetcdfWriter::writeRadialSet ( const RadialSet &   )  [protected, virtual, inherited]

virtual code::Index::Record code::TDWRDataNetcdfWriter::writeRadialSet ( const code::RadialSet &  rs  )  [protected, virtual]


Member Data Documentation

SmartPtr<IndexRecordNotifier> code::RadarDataNetcdfWriter::lb [protected, inherited]

Angle code::RadarDataNetcdfWriter::m_lastElevation [protected, inherited]

Time code::RadarDataNetcdfWriter::m_volStartTime [protected, inherited]

InitSmartPtr< NetcdfEncoder > code::RadarDataNetcdfWriter::ne [protected, inherited]

std::vector< SmartPtr< VirtualVolume > > code::RadarDataNetcdfWriter::virtualVolume [protected, inherited]


Generated on Fri May 4 13:40:22 2012 for WDSS-IIw2algs by  doxygen 1.4.7