Changeset 13887


Ignore:
Timestamp:
05/24/12 21:51:38 (13 years ago)
Author:
tbretz
Message:
Improved screen output.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/FACT++/src/tngweather.cc

    r13869 r13887  
    6363    }
    6464
     65    virtual void UpdateDust(const Time &, const float &)
     66    {
     67    }
     68
    6569    string fRdfData;
    66     uint32_t missing;
     70    float  fDust;
    6771
    6872protected:
     
    136140        PostClose(false);
    137141
     142        if (fIsVerbose)
     143        {
     144            Out() << "------------------------------------------------------" << endl;
     145            Out() << data << endl;
     146            Out() << "------------------------------------------------------" << endl;
     147        }
    138148
    139149        const Soprano::Parser* p = Soprano::PluginManager::instance()->discoverParserForSerialization( Soprano::SerializationRdfXml );
     
    197207                throw runtime_error("time invalid");
    198208
    199             if (time!=fLastReport)
     209            if (time!=fLastReport && fIsVerbose)
    200210            {
    201211                Out() << endl;
     
    220230            UpdateWeather(time, w);
    221231
    222         }
     232            if (fDust==w.fDustTotal)
     233                return;
     234
     235            UpdateDust(time, w.fDustTotal);
     236            fDust = w.fDustTotal;
     237
     238            ostringstream out;
     239            out << setprecision(3) << "Dust: " << fDust << "ug/m^3 [" << time << "]";
     240            Message(out);
     241        }
     242
    223243        catch (const exception &e)
    224244        {
     
    311331public:
    312332    ConnectionWeather(ba::io_service& ioservice, MessageImp &imp) : Connection(ioservice, imp()),
    313         fIsVerbose(true), fLastReport(Time::none), fLastReception(Time::none), fKeepAlive(ioservice)
     333        fIsVerbose(true), fDust(-1),
     334        fLastReport(Time::none), fLastReception(Time::none),
     335        fKeepAlive(ioservice)
    314336    {
    315337        SetLogStream(&imp);
     
    356378    DimDescribedService fDimAtmosphere;
    357379
    358     double dust;
    359 
    360380    virtual void UpdateWeather(const Time &t, const DimWeather &data)
    361381    {
    362382        fDimWeather.setData(&data, sizeof(DimWeather));
    363383        fDimWeather.Update(t);
    364 
    365         if (dust==data.fDustTotal)
    366             return;
    367 
    368         fDimAtmosphere.setData(&data.fDustTotal, sizeof(float));
     384    }
     385
     386    virtual void UpdateDust(const Time &t, const float &dust)
     387    {
     388        fDimAtmosphere.setData(&dust, sizeof(float));
    369389        fDimAtmosphere.Update(t);
    370 
    371         dust = data.fDustTotal;
    372390    }
    373391
     
    389407                     "|Seeing[W/m^2]:Seeing"),
    390408        fDimAtmosphere("TNG_WEATHER/DUST", "F:1",
    391                        "|Dust[ug/m^3]:Dust (total)"),
    392         dust(-1)
     409                       "|Dust[ug/m^3]:Dust (total)")
    393410    {
    394411    }
Note: See TracChangeset for help on using the changeset viewer.