Changeset 14037 for trunk


Ignore:
Timestamp:
06/02/12 15:38:53 (12 years ago)
Author:
tbretz
Message:
Addded source database as option.
File:
1 edited

Legend:

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

    r14036 r14037  
    33#include <libnova/lunar.h>
    44#include <libnova/rise_set.h>
     5#include <libnova/transform.h>
    56#endif
    67
     
    214215    double dec;
    215216
     217    double zd;
     218    double az;
     219
    216220    double disk;
    217221
     
    237241        observer.lng = lon;
    238242        observer.lat = lat;
     243
     244        //observer.lng.degrees = -5;
     245        //observer.lng.minutes = 36;
     246        //observer.lng.seconds = 30;
     247        //observer.lat.degrees = 42;
     248        //observer.lat.minutes = 35;
     249        //observer.lat.seconds = 40;
    239250
    240251        ln_rst_time moon;
     
    264275        ln_get_lunar_equ_coords(JD, &pos);
    265276
     277        ln_hrz_posn hrz;
     278        ln_get_hrz_from_equ (&pos, &observer, JD, &hrz);
     279        az =    hrz.az;
     280        zd = 90-hrz.alt;
     281
    266282        ra  = pos.ra/15;
    267283        dec = pos.dec;
     
    326342{
    327343private:
    328     const Time fRunTime;
    329 
    330344    enum states_t
    331345    {
     
    336350    // ------------------------- Internal variables -----------------------
    337351
     352    const Time fRunTime;
     353
    338354    PixelMap fPixelMap;
     355
     356    string fDatabase;
    339357
    340358    Time fLastUpdate;
     
    407425    Sun   fSun;
    408426    Moon  fMoon;
    409 
    410     //bool fSunIsVisible;
    411     //bool fMoonIsVisible;
    412     //Time fTimeOfCivilTwilight;
    413     //float fMoonPhase;
    414427
    415428    // --------------------------- File header ----------------------------
     
    714727        ostringstream out;
    715728        out << d.GetJavaDate() << '\n';
    716         out << fSun.color << '\t' << fSun.description << '\n';
    717         out << setprecision(2);
    718         out << (fSun.isday?HTML::kWhite:fMoon.color) << '\t' << fMoon.description << '\n';
     729        if (fSun.time.IsValid() && fMoon.time.IsValid())
     730        {
     731            out << fSun.color << '\t' << fSun.description << '\n';
     732            out << setprecision(2);
     733            out << (fSun.isday?HTML::kWhite:fMoon.color) << '\t' << fMoon.description << '\n';
     734        }
     735        else
     736            out << "\n\n";
    719737        out << setprecision(3);
    720738        for (int i=0; i<6; i++)
     
    16521670
    16531671        ostringstream out;
     1672        out << setprecision(3);
    16541673        out << fSun.time.JavaDate() << '\n';
    16551674        out << HTML::kWhite << '\t' << fSun.fSunRiseDarkTime.GetAsStr("%H:%M") << '\n';
     
    16671686        out << HTML::kWhite << '\t' << fMoon.fMoonSet.GetAsStr("%H:%M") << '\n';
    16681687
     1688        if (!fMoon.visible)
     1689            out << HTML::kWhite << "\t&mdash;\n";
     1690        else
     1691        {
     1692            string col = HTML::kGreen;
     1693            if (fMoon.zd>25)
     1694                col = HTML::kYellow;
     1695            if (fMoon.zd>45 && fMoon.zd<85)
     1696                col = HTML::kRed;
     1697            out << col << '\t' << fMoon.zd << '\n';
     1698        }
     1699
    16691700        out << fMoon.color  << '\t' << fMoon.description << '\n';
    16701701
     
    16721703        try
    16731704        {
    1674             const string fDatabase = "readpo:readc0nf1g@10.0.100.21/scheduling";
    1675 
    16761705            //static const boost::regex expr("(([[:word:].-]+)(:(.+))?@)?([[:word:].-]+)(:([[:digit:]]+))?(/([[:word:].-]+))?");
    16771706            static const boost::regex expr("(([[:word:].-]+)(:(.+))?@)?([[:word:].-]+)(:([[:digit:]]+))?(/([[:word:].-]+))");
     
    17321761        catch (const exception &e)
    17331762        {
    1734             Warn("Source database access: "+string(e.what()));
     1763            out << '\n';
     1764            out << HTML::kWhite << '\t' << "ERROR  - "+string(e.what()) << '\n';
    17351765        }
    17361766#endif
     
    23522382        }
    23532383
    2354         fPath = conf.Get<string>("path");
     2384        fPath     = conf.Get<string>("path");
     2385        fDatabase = conf.Get<string>("source-database");
    23552386
    23562387        ostringstream out;
     
    23782409    po::options_description control("Smart FACT");
    23792410    control.add_options()
    2380         ("pixel-map-file", var<string>("FACTmapV5a.txt"),     "Pixel mapping file. Used here to get the default reference voltage")
    2381         ("path",           var<string>("www/smartfact/data"), "Output path for the data-files")
     2411        ("pixel-map-file",  var<string>("FACTmapV5a.txt"),     "Pixel mapping file. Used here to get the default reference voltage")
     2412        ("path",            var<string>("www/smartfact/data"), "Output path for the data-files")
     2413        ("source-database", var<string>(), "Database link as in\n\tuser:password@server[:port]/database.")
    23822414        ;
    23832415
Note: See TracChangeset for help on using the changeset viewer.