Changeset 14497


Ignore:
Timestamp:
10/19/12 14:10:34 (12 years ago)
Author:
tbretz
Message:
Added some basic infrastructure to send alarms e.g. to smartfact.
Location:
trunk/FACT++/src
Files:
5 edited

Legend:

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

    r14185 r14497  
    257257        if (*str)
    258258            JsPrint(*str);
     259    }
     260    return Undefined();
     261}
     262
     263Handle<Value> InterpreterV8::FuncAlarm(const Arguments& args)
     264{
     265    for (int i=0; i<args.Length(); i++)
     266    {
     267        const HandleScope handle_scope;
     268
     269        const String::Utf8Value str(args[i]);
     270        if (*str)
     271            JsAlarm(*str);
    259272    }
    260273    return Undefined();
     
    683696    Handle<ObjectTemplate> dim = ObjectTemplate::New();
    684697    dim->Set(String::New("print"),    FunctionTemplate::New(WrapPrint),    ReadOnly);
     698    dim->Set(String::New("alarm"),    FunctionTemplate::New(WrapAlarm),    ReadOnly);
    685699    dim->Set(String::New("out"),      FunctionTemplate::New(WrapOut),      ReadOnly);
    686700    dim->Set(String::New("wait"),     FunctionTemplate::New(WrapWait),     ReadOnly);
  • trunk/FACT++/src/InterpreterV8.h

    r14177 r14497  
    3535    v8::Handle<v8::Value> FuncSleep(const v8::Arguments& args);
    3636    v8::Handle<v8::Value> FuncPrint(const v8::Arguments& args);
     37    v8::Handle<v8::Value> FuncAlarm(const v8::Arguments& args);
    3738    v8::Handle<v8::Value> FuncOut(const v8::Arguments& args);
    3839    v8::Handle<v8::Value> FuncInclude(const v8::Arguments& args);
     
    5051    static v8::Handle<v8::Value> WrapInclude(const v8::Arguments &args)  { if (This) return This->FuncInclude(args);  else return v8::Undefined(); }
    5152    static v8::Handle<v8::Value> WrapPrint(const v8::Arguments &args)    { if (This) return This->FuncPrint(args);    else return v8::Undefined(); }
     53    static v8::Handle<v8::Value> WrapAlarm(const v8::Arguments &args)    { if (This) return This->FuncAlarm(args);    else return v8::Undefined(); }
    5254    static v8::Handle<v8::Value> WrapOut(const v8::Arguments &args)      { if (This) return This->FuncOut(args);      else return v8::Undefined(); }
    5355    static v8::Handle<v8::Value> WrapWait(const v8::Arguments &args)     { if (This) return This->FuncWait(args);     else return v8::Undefined(); }
     
    8486    virtual void  JsEnd(const std::string &) { }
    8587    virtual void  JsPrint(const std::string &) { }
     88    virtual void  JsAlarm(const std::string &) { }
    8689    virtual void  JsOut(const std::string &) { }
    8790    virtual void  JsResult(const std::string &) { }
  • trunk/FACT++/src/MessageImp.cc

    r13207 r14497  
    9292//!     kWarn:     yellow     W>
    9393//!     kError:    red        E>
     94//!     kAlarm     red        E>
    9495//!     kFatal:    red-blink  !>
    9596//!     kDebug:    blue
     
    117118    case kInfo:    fOut << kGreen         << " I> "; break;
    118119    case kWarn:    fOut << kYellow        << " W> "; break;
    119     case kError:   fOut << kRed           << " E> "; break;
     120    case kError:
     121    case kAlarm:   fOut << kRed           << " E> "; break;
    120122    case kFatal:   fOut << kRed << kBlink << " !> "; break;
    121123    case kDebug:   fOut << kBlue          << "    "; break;
  • trunk/FACT++/src/MessageImp.h

    r13207 r14497  
    1818        kWarn    = 30, ///< A warning, things that somehow might result in unexpected or unwanted bahaviour
    1919        kError   = 40, ///< Error, something unexpected happened, but can still be handled by the program
     20        kAlarm   = 45, ///< Error, something unexpected happened, but needs user intervention (i.e. it needs a signal to the user)
    2021        kFatal   = 50, ///< An error which cannot be handled at all happend, the only solution is program termination
    2122        kComment = 90, ///< A comment which is always printed
     
    4445    int Warn(const std::string &str)     { return Update(str, kWarn);    }
    4546    int Error(const std::string &str)    { return Update(str, kError);   }
     47    int Alarm(const std::string &str)    { return Update(str, kAlarm);   }
    4648    int Fatal(const std::string &str)    { return Update(str, kFatal);   }
    4749    int Comment(const std::string &str)  { return Update(str, kComment); }
     
    5254    int Warn(const char *txt)    { return Warn(std::string(txt));    }
    5355    int Error(const char *txt)   { return Error(std::string(txt));   }
     56    int Alarm(const char *txt)   { return Alarm(std::string(txt));   }
    5457    int Fatal(const char *txt)   { return Fatal(std::string(txt));   }
    5558    int Comment(const char *txt) { return Comment(std::string(txt)); }
     
    5962    int Info(const std::ostringstream &str)    { return Info(str.str());    }
    6063    int Warn(const std::ostringstream &str)    { return Warn(str.str());    }
     64    int Alarm(const std::ostringstream &str)   { return Alarm(str.str());   }
    6165    int Error(const std::ostringstream &str)   { return Error(str.str());   }
    6266    int Fatal(const std::ostringstream &str)   { return Fatal(str.str());   }
  • trunk/FACT++/src/RemoteControl.h

    r14351 r14497  
    167167    virtual void  JsOut(const std::string &msg)       { lout << msg << endl; }
    168168    virtual void  JsPrint(const std::string &msg)     { if (fImp) fImp->Comment(msg.empty()?" ":msg); }
     169    virtual void  JsAlarm(const std::string &msg)     { if (fImp) fImp->Alarm(msg.empty()?" ":msg); }
    169170    virtual void  JsException(const std::string &str) { if (fImp) fImp->Error(str.empty()?" ":str); }
    170171
Note: See TracChangeset for help on using the changeset viewer.