00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 void TGo4MacroDialog::setCommand( const QString & selection )
00032 {
00033 if(selection.contains("Add"))
00034 {
00035 fxCommand="addhistos(";
00036 fxCommand+='"';
00037 fxCommand+='"';
00038 fxCommand+=",";
00039 fxCommand+='"';
00040 fxCommand+='"';
00041 fxCommand+=", 1, kTRUE);";
00042 SyntaxLabel->setText("Bool_t addhistos(const char* name1, const char* name2, Double_t factor, Bool_t draw)");
00043 QToolTip::add(this,"Add histograms: result=name1 + factor * name2. \n If draw==true, display in new viewpanel, otherwise just update existing displays");
00044 }
00045 else if (selection.contains("Divide"))
00046 {
00047 fxCommand="divhistos(";
00048 fxCommand+='"';
00049 fxCommand+='"';
00050 fxCommand+=",";
00051 fxCommand+='"';
00052 fxCommand+='"';
00053 fxCommand+=", kTRUE);";
00054 SyntaxLabel->setText("Bool_t divhistos(const char* name1, const char* name2, Bool_t draw)");
00055
00056 QToolTip::add(this,"Divide histograms: result=name1 by name2.\n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00057 }
00058 else if (selection.contains("Rebin"))
00059 {
00060 fxCommand="rebin(";
00061 fxCommand+='"';
00062 fxCommand+='"';
00063 fxCommand+=", 2, kTRUE);";
00064 SyntaxLabel->setText("Bool_t rebin(const char* name1, int ngroup, Bool_t draw)");
00065
00066 QToolTip::add(this,"Rebin histogram name1 by mergin ngroup neighboured channels together. \n If draw=true, display in new viewpanel, otherwise just update existing displays ");
00067 }
00068 else if (selection.contains("Projection X"))
00069 {
00070 fxCommand="projectionX(";
00071 fxCommand+='"';
00072 fxCommand+='"';
00073 fxCommand+=", -1, -1, kTRUE);";
00074 SyntaxLabel->setText("Bool_t projectionX(const char* name1, Int_t firstybin, Int_t lastybin, Bool_t draw)");
00075 QToolTip::add(this," Do projection to X axis for 2d histogram name1.\n Parameters firstybin, lastybin for y range. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00076
00077 }
00078 else if (selection.contains("Projection Y"))
00079 {
00080 fxCommand="projectionY(";
00081 fxCommand+='"';
00082 fxCommand+='"';
00083 fxCommand+=", -1, -1, kTRUE);";
00084 SyntaxLabel->setText("Bool_t projectionY(const char* name1, Int_t firstxbin, Int_t lastxbin, Bool_t draw)");
00085 QToolTip::add(this," Do projection to Y axis for 2d histogram name1. \n Parameters firstxbin, lastxbin for x range. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00086
00087 }
00088 else if (selection.contains("Correlate"))
00089 {
00090 fxCommand="corrhistos(";
00091 fxCommand+='"';
00092 fxCommand+='"';
00093 fxCommand+=",";
00094 fxCommand+='"';
00095 fxCommand+='"';
00096 fxCommand+=", kTRUE);";
00097 SyntaxLabel->setText("Bool_t corrhistos(const char* name1, const char* name2, Bool_t draw)");
00098 QToolTip::add(this," Correlate bin contents of two histograms in a graph.\n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00099
00100 }
00101 else if (selection.contains("Histogram of"))
00102 {
00103 fxCommand="hishisto(";
00104 fxCommand+='"';
00105 fxCommand+='"';
00106 fxCommand+=", 1000, kTRUE);";
00107 SyntaxLabel->setText("Bool_t hishisto(const char* name1, Int_t bins, Bool_t draw)");
00108 QToolTip::add(this," Create histogram and fill with contents of histogram name1. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00109
00110 }
00111 else if (selection.contains("Profile X"))
00112 {
00113 fxCommand="profileX(";
00114 fxCommand+='"';
00115 fxCommand+='"';
00116 fxCommand+=", -1, -1, kTRUE);";
00117 SyntaxLabel->setText("Bool_t profileX(const char* name1, Int_t firstybin, Int_t lastybin, Bool_t draw)");
00118 QToolTip::add(this," Do profile to X axis for 2d histogram name1. \n Parameters firstybin, lastybin for y range. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00119
00120 }
00121 else if (selection.contains("Profile Y"))
00122 {
00123 fxCommand="profileY(";
00124 fxCommand+='"';
00125 fxCommand+='"';
00126 fxCommand+=", -1, -1, kTRUE);";
00127 SyntaxLabel->setText("Bool_t profileY(const char* name1, Int_t firstxbin, Int_t lastxbin, Bool_t draw)");
00128 QToolTip::add(this," Do profile to Y axis for 2d histogram name1. \n Parameters firstxbin, lastxbin for x range. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00129
00130 }
00131 else if (selection.contains("Scale X"))
00132 {
00133 fxCommand="scalex(";
00134 fxCommand+='"';
00135 fxCommand+='"';
00136 fxCommand+=", 1, 0, kTRUE);";
00137 SyntaxLabel->setText("Bool_t scalex(const char* name1, Double_t a1, Double_t a0, Bool_t draw)");
00138 QToolTip::add(this," Scale x axis of histogram name1 by linear function. \n Parameters: x'= a1*x + a0. \n If draw==true, display in new viewpanel, otherwise just update existing displays ");
00139 }
00140 else
00141 {
00142 fxCommand="unknown macro function" ;
00143 }
00144
00145
00146 }
00147
00148
00149 const QString& TGo4MacroDialog::getCommand()
00150 {
00151 return fxCommand;
00152 }
00153
00154
00155 void TGo4MacroDialog::init()
00156 {
00157 setCommand("Add");
00158 }
00159
00160
00161
00162
00163