00001 00017 #ifndef JINT_H 00018 #define JINT_H 00019 00020 #include <Registry/Registry.h> 00021 #include <JobControl/JobCPath.h> 00022 00023 #include <Midad/Util/Signals.h> 00024 00025 class JobC; 00026 class MomNavigator; 00027 00028 class Jint : public SigC::Object 00029 { 00030 00031 public: 00032 00033 Jint(JobC& jc); 00034 virtual ~Jint(); 00035 00036 const MomNavigator* GetMom() const; 00037 JobC& GetJobC() const { return fJC; }; 00038 00039 // Navigate the input record stream 00040 void Next(int n=1, const char* path_name = 0); 00041 void NextPass(int n=1, const char* path_name = 0); 00042 void Prev(int n=1, const char* path_name = 0); 00043 void Rerun(const char* path_name = 0); 00044 void GoTo(int run, int snarl); 00045 void Run(int n=1, JobCPath::RunMode_t mode=JobCPath::kRunNin, 00046 const char* path_name=0); 00047 00048 // used by Views 00049 const Registry& GetState() { return fJobState; } 00050 00051 SigC::Signal0<void> mom_modified; 00052 SigC::Signal0<void> job_modified; 00053 00054 00055 private: 00056 00057 // copy constructor, assignment: 00058 Jint(const Jint& rhs); // copy constructor 00059 Jint& operator=(const Jint& rhs); // assignment 00060 00061 // JobCPath sig handlers 00062 void AddPath(JobCPath* jcp); 00063 void RemovePath(JobCPath* jcp); 00064 void UpdatePath(JobCPath* jcp, JobCPath::Update_t utype); 00065 void StartPathRun(JobCPath* jcp); 00066 void EndPathRun(JobCPath* jcp); 00067 00068 00069 JobC& fJC; 00070 Registry fJobState; 00071 const char* fFirstPath; 00072 }; // end of class Jint 00073 00074 #endif // JINT_H
1.3.9.1