#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const char cmds[8][128] = {"caget pxiroot:data:Coil1_Accel_Bot.VALA", "caget pxiroot:data:Coil1_Accel_Top.VALA", "caget pxiroot:data:Coil2_Accel_Bot.VALA", "caget pxiroot:data:Coil2_Accel_Top.VALA", "caget pxiroot:data:Coil3_Accel_Bot.VALA", "caget pxiroot:data:Coil3_Accel_Top.VALA", "caget pxiroot:data:Coil4_Accel_Bot.VALA", "caget pxiroot:data:Coil4_Accel_Top.VALA"}; class PXIMonMainFrame : public TGMainFrame { private: TGMainFrame *fMain; TRootEmbeddedCanvas *fEcanvas; public: PXIMonMainFrame(const TGWindow *p,UInt_t w,UInt_t h); virtual ~PXIMonMainFrame(); char Buffer[8][10000000]; TH1F *TheHist[8]; float OFFSETS[8]; char TriggerFileName[128]; ofstream OUTFTrig; float ThreshHold; int FirstTime; int StopThreads; int CoilToView; void Quit(); void SetCoilSelect(int c); void FillHistogram(int id); void * HistThreads(void *); void StartThreads(); void StopAllThreads(); void * DoPlotting(void *); #ifndef __CINT__ pthread_t threads[9]; #endif ClassDef(PXIMonMainFrame, 0); };