36 : fParams(0), fHeaders(0), fName(0), fIndex(0)
51 : fParams(0), fHeaders(0), fName(0), fIndex(38)
66 : fParams(0), fHeaders(0), fName(0), fIndex(38)
68 SetAllParameters( f1, f2, f3, f4, f5, f6, f7, f8, f9,f10,f11,f12
69 ,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24
70 ,f25,f26,f27,f28,f29,f30,f31,f32,f33,f34,f35,f36
75 St_Module::~St_Module()
77 if (fHeaders) fHeaders->Delete();
82 void St_Module::ClearParams()
144 void St_Module::SetParameter(
TTable *f)
149 fParams =
new TObjArray(fIndex);
150 fHeaders =
new TObjArray(fIndex);
152 fParams->AddAt(f,fIndex-1);
158 Int_t St_Module::CheckParameters(
const Char_t *names[])
177 TObjArray &thisParams = *fParams;
178 Int_t thisSize = thisParams.GetSize();
179 for (Int_t i=0;i<thisSize;i++)
180 if (!thisParams[i]) {
184 fprintf(stderr,
"\n \t ***** Error calling module <%s> *****\n"
186 const Char_t *suffix[4]={
"st",
"nd",
"d",
"th"};
188 if ( (10 < i && i < 20) || indx > 3 || indx == 0) indx = 4;
190 const Char_t *name = names ? names[i] :
"unknown" ;
191 fprintf(stderr,
"\t %i-%s table of <%s> has not been defined yet\n"
192 ,i,suffix[indx],name);
203 Int_t thisSize = fParams->GetSize();
204 for (Int_t i=0;i<thisSize;i++) {
208 TTable *table = GetTable(i);
213 table->SetNRows(h->
nok);
220 if (errcode && bug) {
223 "\n \t ***** module <%s> returned the corrupted table %s *****\n \t * The number of the used rows more (or equal) of the allocated ones *\n"
224 ,GetName(), table->GetName());
225 const Char_t *suffix[4]={
"st",
"nd",
"rd",
"th"};
227 if ( (10 < i && i < 20) || indx > 3 || indx == 0) indx = 4;
229 const Char_t *name = names ? names[i] :
"unknown" ;
230 fprintf(stderr,
"\t %i-%s <%s> %s has used %d with %d allocated\n"
231 ,i+1,suffix[indx],name, table->GetName(),(int)h->
nok,(
int)h->
maxlen);
245 printf(
" This \"%s\" module has ", GetName());
248 Int_t thisSize = fParams->GetSize();
250 printf(
"only one parameter: ");
252 printf(
"%i parameters: ",thisSize);
253 for (Int_t i=0;i<thisSize;i++)
255 if (fParams->At(i)) printf(
" %lx ",*((ULong_t *)fParams->At(i)));
260 printf(
"%i parameter has not been defined yet\n"
264 if (i < thisSize-1) printf(
", ");
270 printf(
" NO parameters \n");
275 void St_Module::SetEntryName()
277 st_Name =
new char[strlen(GetName()+10];
278 strcpy(st_Name,GetName());
282 if (st_Type==kFortran)
286 # ifdef CERNLIB_MSSTDCALL
289 atoi(buftmp,fN*4,10);
290 strcat(st_Name,buftmp);
292 #else //VP if defined(uscope)
314 SetAllParameters( f1, f2, f3, f4, f5, f6, f7, f8, f9,f10,f11,f12
315 ,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,
316 f25,f26,f27,f28,f29,f30,f31,f32,f33,f34,f35,f36,
321 void St_Module::Streamer(TBuffer &)
virtual Int_t ExecuteModule()
virtual Long_t GetRowSize() const
Returns the size (in bytes) of one table row.
virtual Int_t CheckResults(Int_t res, const Char_t *names[]=0)
virtual Long_t GetTableSize() const
Returns the number of the allocated rows.