4 #include <utl/ErrorLogger.h>
7 #include <det/Detector.h>
8 #include <utl/TimeStamp.h>
9 #include <utl/UTCDateTime.h>
11 #include <atm/MolecularDB.h>
12 #include <atm/MolecularZone.h>
20 using namespace ReadMolecularLLNS;
22 ReadMolecularLL::ReadMolecularLL(){}
24 ReadMolecularLL::~ReadMolecularLL(){}
29 INFO(
"ReadMolecularLL::Init()");
36 INFO(
"ReadMolecularLL::Run()");
38 Detector& det = Detector::GetInstance();
47 cout <<
"Malargue montlhy model for January : " << endl;
51 cout <<
"Got zone : " << zIt->GetName() << endl;
52 cout <<
" with coordinates : " << zIt->GetNorthing()/
m <<
"N, " << zIt->GetEasting()/
m <<
" E " << endl;
57 sIt != zIt->LayersEnd() ; ++sIt){
60 cout <<
"height " << sIt->GetHeight()/
m <<
" m " << endl;
61 cout <<
"depth " << sIt->GetDepth()/(
gram/
cm/
cm) <<
" g/cm^2" << endl;
62 cout <<
"pressure " << sIt->GetPressure()/
pascal <<
" pascal " << endl;
63 cout <<
"temperature " << sIt->GetTemperature()/
kelvin <<
" kelvin " << endl;
75 cout << endl << endl <<
"some weather station data for " << det.
GetTime() << endl;
82 sIt != zIt->LayersEnd() ; ++sIt){
85 cout <<
"height " << sIt->GetHeight()/
m <<
" m " << endl;
86 cout <<
"depth " << sIt->GetDepth()/(
gram/
cm/
cm) <<
" g/cm^2" << endl;
87 cout <<
"pressure " << sIt->GetPressure()/
pascal <<
" pascal " << endl;
88 cout <<
"temperature " << sIt->GetTemperature()/
kelvin <<
" kelvin " << endl;
89 cout <<
"wind speed " << sIt->GetWindSpeed()/(
m/
s) <<
" m/s " << endl;
99 INFO(
"ReadMolecularLL::Finish()");
void Update(const utl::TimeStamp &time, const bool invData=true, const bool invComp=true, const bool forceRadio=false)
Update detector: deletes currently constructed stations and sets new time.
boost::transform_iterator< InternalZoneFunctor, InternalZoneIterator, const MolecularZone & > ZoneIterator
ZoneIterator returns a pointer to a MolecularZone.
utl::TimeStamp GetTime() const
Get time pertaining to the detector description.
ZoneIterator ZonesEnd() const
End of the collection of valid Zones.
#define INFO(message)
Macro for logging informational messages.
Detector description interface for data in the Atm_Molecular database.
void Init()
Initialise the registry.
const atm::Atmosphere & GetAtmosphere() const
Top of the hierarchy of the detector description interface.
const MolecularDB & GetMolecularDB(const MolecularIds::ProfileId &id) const
Low-level interface to portion of the database with molecular information.
ZoneIterator ZonesBegin() const
Beginning of the collection of valid Zones.
ResultFlag
Flag returned by module methods to the RunController.
boost::indirect_iterator< InternalLayerIterator, const MolecularLayer & > LayerIterator
Layer iterator returns a pointer to the molecular data slice for this zone.