JAPAn
Just Another Parity Analyzer
Loading...
Searching...
No Matches
QwPromptSummary Class Reference

#include <QwPromptSummary.h>

+ Inheritance diagram for QwPromptSummary:
+ Collaboration diagram for QwPromptSummary:

Public Member Functions

 QwPromptSummary ()
 
 QwPromptSummary (Int_t run_number, Int_t runlet_number)
 
 QwPromptSummary (Int_t run_number, Int_t runlet_number, const std::string &parameter_file)
 
virtual ~QwPromptSummary ()
 
void SetRunNumber (const Int_t in)
 
Int_t GetRunNumber ()
 
void SetRunletNumber (const Int_t in)
 
Int_t GetRunletNumber ()
 
void SetPatternSize (const Int_t in)
 
Int_t GetPatternSize ()
 
void AddElement (PromptSummaryElement *in)
 
PromptSummaryElementGetElementByName (TString name)
 
void FillDataInElement (TString name, Double_t yield, Double_t yield_err, Double_t yield_width, TString yield_unit, Double_t asym_diff, Double_t asym_diff_err, Double_t asym_diff_width, TString asym_diff_unit)
 
void FillYieldToElement (TString name, Double_t yield, Double_t yield_error, Double_t yield_width, TString yield_unit)
 
void FillAsymDiffToElement (TString name, Double_t asym_diff, Double_t asym_diff_err, Double_t asym_diff_width, TString asym_diff_unit)
 
void FillDoubleDifference (TString type, TString name1, TString name2)
 
Int_t GetSize () const
 
Int_t Size () const
 
Int_t HowManyElements () const
 
void PrintCSV (Int_t nEvents, TString start_time, TString end_time)
 
void PrintTextSummary ()
 

Data Fields

std::map< TString, PromptSummaryElement * > fElementList
 
PromptSummaryElementfReferenceElement {nullptr}
 

Private Member Functions

TString PrintTextSummaryHeader ()
 
TString PrintTextSummaryTailer ()
 
TString PrintCSVHeader (Int_t nEvents, TString start_time, TString end_time)
 
void SetupElementList ()
 
void LoadElementsFromParameterFile (const std::string &parameter_file)
 
void LoadElementsFromParameterFile (QwParameterFile &parameterfile)
 
 ClassDefOverride (QwPromptSummary, 0)
 

Private Attributes

Int_t fPatternSize
 
Int_t fRunNumber
 
Int_t fRunletNumber
 
Bool_t fLocalDebug
 

Detailed Description

Definition at line 132 of file QwPromptSummary.h.

Constructor & Destructor Documentation

◆ QwPromptSummary() [1/3]

QwPromptSummary::QwPromptSummary ( )

Definition at line 179 of file QwPromptSummary.cc.

180{
181 fRunNumber = 0;
182 fRunletNumber = 0;
183
184 fLocalDebug = kTRUE;
185
186 this->SetupElementList();
187
188};

References fLocalDebug, fRunletNumber, fRunNumber, and SetupElementList().

Referenced by ClassDefOverride().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ QwPromptSummary() [2/3]

QwPromptSummary::QwPromptSummary ( Int_t run_number,
Int_t runlet_number )

Definition at line 191 of file QwPromptSummary.cc.

192{
193 fRunNumber = run_number;
194 fRunletNumber = runlet_number;
195
196 fLocalDebug = kFALSE;
197
198 this->SetupElementList();
199
200};

References fLocalDebug, fRunletNumber, fRunNumber, and SetupElementList().

+ Here is the call graph for this function:

◆ QwPromptSummary() [3/3]

QwPromptSummary::QwPromptSummary ( Int_t run_number,
Int_t runlet_number,
const std::string & parameter_file )

Definition at line 203 of file QwPromptSummary.cc.

204{
205 fRunNumber = run_number;
206 fRunletNumber = runlet_number;
207
208 fLocalDebug = kFALSE;
209
210 this->LoadElementsFromParameterFile(parameter_file);
211
212};
void LoadElementsFromParameterFile(const std::string &parameter_file)

References fLocalDebug, fRunletNumber, fRunNumber, and LoadElementsFromParameterFile().

+ Here is the call graph for this function:

◆ ~QwPromptSummary()

QwPromptSummary::~QwPromptSummary ( )
virtual

Definition at line 215 of file QwPromptSummary.cc.

216{
217
218 for (auto i=fElementList.begin() ; i!=fElementList.end();i++){
219 delete i->second;
220 }
221 fElementList.clear();
222
223};
std::map< TString, PromptSummaryElement * > fElementList

References fElementList.

Member Function Documentation

◆ AddElement()

void QwPromptSummary::AddElement ( PromptSummaryElement * in)

Definition at line 330 of file QwPromptSummary.cc.

331{
332 TString name = in->GetName(); name.ToLower();
333 fElementList[name] = in;
334 if(fLocalDebug) {
335 printf("AddElement %s at pos %lu\n", in->GetName().Data(), fElementList.size()-1);
336 }
337 if (fElementList.size() == 1) {
338 QwMessage << "First element: " << in->GetName() << " will be reference" << QwLog::endl;
340 }
341};
#define QwMessage
Predefined log drain for regular messages.
Definition QwLog.h:49
static std::ostream & endl(std::ostream &)
End of the line.
Definition QwLog.cc:297
PromptSummaryElement * fReferenceElement

References QwLog::endl(), fElementList, fLocalDebug, fReferenceElement, PromptSummaryElement::GetName(), and QwMessage.

Referenced by LoadElementsFromParameterFile(), QwBeamLine::WritePromptSummary(), VQwDataHandler::WritePromptSummary(), and VQwDetectorArray::WritePromptSummary().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ClassDefOverride()

QwPromptSummary::ClassDefOverride ( QwPromptSummary ,
0  )
private

References QwPromptSummary().

+ Here is the call graph for this function:

◆ FillAsymDiffToElement()

void QwPromptSummary::FillAsymDiffToElement ( TString name,
Double_t asym_diff,
Double_t asym_diff_err,
Double_t asym_diff_width,
TString asym_diff_unit )

Definition at line 480 of file QwPromptSummary.cc.

486{
487 PromptSummaryElement* an_element = NULL;
488 an_element = this->GetElementByName(name);
489 if(an_element) {
490 an_element->SetAsymmetry(asym_diff);
491 an_element->SetAsymmetryError(asym_diff_err);
492 an_element->SetAsymmetryWidth(asym_diff_width);
493 }
494 else {
495 if(fLocalDebug) {
496 std::cout
497 << "QwPromptSummary::FillYieldToElement : No Element with the name "
498 << name
499 << std::endl;
500 }
501 }
502
503 return;
504};
void SetAsymmetryWidth(const Double_t in)
void SetAsymmetry(const Double_t in)
void SetAsymmetryError(const Double_t in)
PromptSummaryElement * GetElementByName(TString name)

References fLocalDebug, GetElementByName(), PromptSummaryElement::SetAsymmetry(), PromptSummaryElement::SetAsymmetryError(), and PromptSummaryElement::SetAsymmetryWidth().

+ Here is the call graph for this function:

◆ FillDataInElement()

void QwPromptSummary::FillDataInElement ( TString name,
Double_t yield,
Double_t yield_err,
Double_t yield_width,
TString yield_unit,
Double_t asym_diff,
Double_t asym_diff_err,
Double_t asym_diff_width,
TString asym_diff_unit )

Definition at line 424 of file QwPromptSummary.cc.

434{
435
436 PromptSummaryElement* an_element = NULL;
437 an_element = this->GetElementByName(name);
438 if(an_element) {
439 an_element->FillData(yield, yield_err, yield_width, yield_unit, asym_diff, asym_diff_err, asym_diff_width, asym_diff_unit);
440 }
441 else {
442 if(fLocalDebug) {
443 std::cout
444 << "QwPromptSummary::FillDataInElement : No Element with the name "
445 << name
446 << std::endl;
447 }
448 }
449 return;
450};
void FillData(Double_t yield, Double_t yield_err, Double_t yield_width, TString yield_unit, Double_t asym_diff, Double_t asym_diff_err, Double_t asym_diff_width, TString asym_diff_unit)

References PromptSummaryElement::FillData(), fLocalDebug, and GetElementByName().

+ Here is the call graph for this function:

◆ FillDoubleDifference()

void QwPromptSummary::FillDoubleDifference ( TString type,
TString name1,
TString name2 )

Definition at line 507 of file QwPromptSummary.cc.

508{
509 PromptSummaryElement* an_element = NULL;
510
511
512 PromptSummaryElement* one_element = NULL;
513 PromptSummaryElement* two_element = NULL;
514
515 one_element = this->GetElementByName(name1);
516 two_element = this->GetElementByName(name2);
517
518 if(one_element && two_element ) {
519
520 an_element = this->GetElementByName(name1+"-"+name2);
521
522 if(an_element) {
523
524
525 Double_t diff = 0.0;
526 Double_t error_diff = 0.0;
527 Double_t width_diff = 0.0;
528
529 Double_t a = 0.0;
530 Double_t b = 0.0;
531 Double_t a_err = 0.0;
532 Double_t b_err = 0.0;
533 Double_t a_wit = 0.0;
534 Double_t b_wit = 0.0;
535
536
537 if(type.Contains("yield")) {
538 a = one_element -> GetYield();
539 b = two_element -> GetYield();
540 a_err = one_element -> GetYieldError();
541 b_err = two_element -> GetYieldError();
542 a_wit = one_element -> GetYieldWidth();
543 b_wit = two_element -> GetYieldWidth();
544
545 diff = a - b;
546 error_diff = TMath::Sqrt(a_err*a_err + b_err*b_err);
547 width_diff = a_wit - b_wit;
548
549 an_element -> SetYield(diff);
550 an_element -> SetYieldError(error_diff);
551 an_element -> SetYieldWidth(width_diff);
552
553 } else {
554 a = one_element -> GetAsymmetry();
555 b = two_element -> GetAsymmetry();
556 a_err = one_element -> GetAsymmetryError();
557 b_err = two_element -> GetAsymmetryError();
558 a_wit = one_element -> GetAsymmetryWidth();
559 b_wit = two_element -> GetAsymmetryWidth();
560
561 diff = a - b;
562 error_diff = TMath::Sqrt(a_err*a_err + b_err*b_err);
563 width_diff = a_wit - b_wit;
564
565 an_element -> SetAsymmetry(diff);
566 an_element -> SetAsymmetryError(error_diff);
567 an_element -> SetAsymmetryWidth(width_diff);
568
569
570 }
571
572 }
573 else {
574 if(fLocalDebug) {
575 std::cout
576 << "QwPromptSummary::FillYieldToElement : No Element with the name "
577 << name1 + "-" + name2
578 << std::endl;
579 }
580 }
581
582 }
583 else {
584 if(fLocalDebug) {
585 std::cout
586 << "QwPromptSummary::FillDoubleDifference: No Elements with the name "
587 << name1 << " and " << name2
588 << std::endl;
589 }
590 }
591}

References fLocalDebug, and GetElementByName().

+ Here is the call graph for this function:

◆ FillYieldToElement()

void QwPromptSummary::FillYieldToElement ( TString name,
Double_t yield,
Double_t yield_error,
Double_t yield_width,
TString yield_unit )

Definition at line 454 of file QwPromptSummary.cc.

460{
461 PromptSummaryElement* an_element = NULL;
462 an_element = this->GetElementByName(name);
463 if(an_element) {
464 an_element->SetYield(yield);
465 an_element->SetYieldError(yield_error);
466 an_element->SetYieldWidth(yield_width);
467 }
468 else {
469 if(fLocalDebug) {
470 std::cout
471 << "QwPromptSummary::FillYieldToElement : No Element with the name "
472 << name
473 << std::endl;
474 }
475 }
476 return;
477};
void SetYield(const Double_t in)
void SetYieldWidth(const Double_t in)
void SetYieldError(const Double_t in)

References fLocalDebug, GetElementByName(), PromptSummaryElement::SetYield(), PromptSummaryElement::SetYieldError(), and PromptSummaryElement::SetYieldWidth().

+ Here is the call graph for this function:

◆ GetElementByName()

PromptSummaryElement * QwPromptSummary::GetElementByName ( TString name)

Definition at line 345 of file QwPromptSummary.cc.

346{
347 name.ToLower();
348 if (fElementList.find(name) != fElementList.end()) {
349 PromptSummaryElement* an_element = fElementList[name];
350 if(fLocalDebug) {
351 std::cout << "System " << an_element->GetName()
352 << " QwPromptSummary::GetElementByName address at " << an_element << std::endl;
353 }
354 return an_element;
355 } else {
356 QwDebug << "System " << name
357 << " QwPromptSummary::GetElementByName not found" << std::endl;
358 }
359 return NULL;
360};
#define QwDebug
Predefined log drain for debugging output.
Definition QwLog.h:59

References fElementList, fLocalDebug, PromptSummaryElement::GetName(), and QwDebug.

Referenced by FillAsymDiffToElement(), FillDataInElement(), FillDoubleDifference(), FillYieldToElement(), QwBeamLine::WritePromptSummary(), VQwDataHandler::WritePromptSummary(), and VQwDetectorArray::WritePromptSummary().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetPatternSize()

Int_t QwPromptSummary::GetPatternSize ( )
inline

Definition at line 151 of file QwPromptSummary.h.

151{ return fPatternSize; };

References fPatternSize.

◆ GetRunletNumber()

Int_t QwPromptSummary::GetRunletNumber ( )
inline

Definition at line 148 of file QwPromptSummary.h.

148{return fRunletNumber;};

References fRunletNumber.

◆ GetRunNumber()

Int_t QwPromptSummary::GetRunNumber ( )
inline

Definition at line 145 of file QwPromptSummary.h.

145{return fRunNumber;};

References fRunNumber.

◆ GetSize()

Int_t QwPromptSummary::GetSize ( ) const
inline

Definition at line 168 of file QwPromptSummary.h.

168{return fElementList.size();};

References fElementList.

◆ HowManyElements()

Int_t QwPromptSummary::HowManyElements ( ) const
inline

Definition at line 170 of file QwPromptSummary.h.

170{return fElementList.size();};

References fElementList.

◆ LoadElementsFromParameterFile() [1/2]

void QwPromptSummary::LoadElementsFromParameterFile ( const std::string & parameter_file)
private

Definition at line 250 of file QwPromptSummary.cc.

251{
252 try {
253 QwParameterFile paramfile(parameter_file);
255 } catch (const std::exception& e) {
256 QwError << "QwPromptSummary::LoadElementsFromParameterFile: Unable to open parameter file: "
257 << parameter_file << " - " << e.what() << QwLog::endl;
258 QwMessage << "Falling back to default (empty) element list." << QwLog::endl;
259 }
260};
#define QwError
Predefined log drain for errors.
Definition QwLog.h:39

References QwLog::endl(), LoadElementsFromParameterFile(), QwError, and QwMessage.

Referenced by LoadElementsFromParameterFile(), QwPromptSummary(), and SetupElementList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadElementsFromParameterFile() [2/2]

void QwPromptSummary::LoadElementsFromParameterFile ( QwParameterFile & parameterfile)
private

Definition at line 264 of file QwPromptSummary.cc.

265{
266 QwMessage << "QwPromptSummary::LoadElementsFromParameterFile: Loading prompt summary elements" << QwLog::endl;
267
268 // Read preamble
269 std::unique_ptr<QwParameterFile> preamble = parameterfile.ReadSectionPreamble();
270 if (preamble) {
271 QwVerbose << "PromptSummary preamble:" << QwLog::endl;
272 QwVerbose << *preamble << QwLog::endl;
273 }
274
275 // Read sections
276 std::unique_ptr<QwParameterFile> section;
277 std::string section_name;
278 while ((section = parameterfile.ReadNextSection(section_name))) {
279 QwVerbose << "Processing section: " << section_name << QwLog::endl;
280
281 // Check if this is a prompt summary elements section
282 if (section_name == "prompt_summary_elements" || section_name == "elements") {
283 // Process individual elements in this section
284 while (section->ReadNextLine()) {
285 section->TrimWhitespace();
286 section->TrimComment();
287 if (section->LineIsEmpty()) continue;
288
289 std::string line = section->GetLine();
290
291 // Parse element definitions
292 // Format 1: Simple element name
293 // Format 2: element_name = type (where type could be single, difference, etc.)
294
295 std::string element_name, element_type;
296 if (section->HasVariablePair("=", element_name, element_type)) {
297 // Format: element_name = type
298 // Trim whitespace manually since TrimWhitespace is protected
299 element_name.erase(0, element_name.find_first_not_of(" \t\r\n"));
300 element_name.erase(element_name.find_last_not_of(" \t\r\n") + 1);
301 element_type.erase(0, element_type.find_first_not_of(" \t\r\n"));
302 element_type.erase(element_type.find_last_not_of(" \t\r\n") + 1);
303
304 if (fLocalDebug) {
305 QwMessage << "Adding element: " << element_name << " (type: " << element_type << ")" << QwLog::endl;
306 }
307 } else {
308 // Format: simple element name
309 element_name = line;
310 element_type = "single"; // default type
311
312 if (fLocalDebug) {
313 QwMessage << "Adding element: " << element_name << " (default type)" << QwLog::endl;
314 }
315 }
316
317 // Create and add the element
318 if (!element_name.empty()) {
319 this->AddElement(new PromptSummaryElement(TString(element_name.c_str())));
320 }
321 }
322 }
323 }
324
325 QwMessage << "QwPromptSummary: Loaded " << fElementList.size() << " elements from parameter file" << QwLog::endl;
326};
#define QwVerbose
Predefined log drain for verbose messages.
Definition QwLog.h:54
std::unique_ptr< QwParameterFile > ReadSectionPreamble()
Rewinds to the start and read until it finds next section header.
std::unique_ptr< QwParameterFile > ReadNextSection(std::string &secname, const bool keep_header=false)
void AddElement(PromptSummaryElement *in)

References AddElement(), QwLog::endl(), fElementList, fLocalDebug, QwMessage, QwVerbose, QwParameterFile::ReadNextSection(), and QwParameterFile::ReadSectionPreamble().

+ Here is the call graph for this function:

◆ PrintCSV()

void QwPromptSummary::PrintCSV ( Int_t nEvents,
TString start_time,
TString end_time )

Definition at line 594 of file QwPromptSummary.cc.

595{
596 printf("-----------------------\n");
597 TString filename = gQwOptions.GetValue<std::string>("rootfiles");
598 filename+=Form("/summary_%d.txt", fRunNumber);
599 TString header= this->PrintCSVHeader(nEvents, start_time, end_time);
600 std::ofstream output;
601 output.open(filename.Data());
602 output<< header.Data();
603
604 TString secheader= "=========================================================================\n";
605 secheader+=Form("%40s \n","Yields");
606 secheader+="=========================================================================\n" ;
607 output << secheader.Data() ;
608
609 for (auto i=fElementList.begin(); i!=fElementList.end(); i++ )
610 {
611 output << i->second->GetCSVSummary("yield") ;
612 }
613
614
615 secheader= "=========================================================================\n";
616 secheader+=Form("%50s\n","Asymmetries/Differences");
617 secheader+="=========================================================================\n";
618 output << secheader.Data();
619
620 for ( auto j=fElementList.begin(); j!=fElementList.end(); j++ )
621 {
622 output << j->second->GetCSVSummary("asymmetry");
623 }
624
625
626
627 secheader= "=========================================================================\n";
628 secheader+=Form("%55s\n", "Combined Differences/Averages");
629 secheader+="=========================================================================\n";
630 output << secheader.Data();
631
632 for ( auto j=fElementList.begin(); j!=fElementList.end(); j++ )
633 {
634 output << j->second->GetCSVSummary("double");
635 }
636
637 output<< "=========================================================================\n";
638 output<< Form("%45s\n"," End of Summary");
639 output<< "=========================================================================\n";
640 output.close();
641
642 return;
643};
#define gQwOptions
Definition QwOptions.h:31
TString PrintCSVHeader(Int_t nEvents, TString start_time, TString end_time)

References fElementList, fRunNumber, gQwOptions, and PrintCSVHeader().

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintCSVHeader()

TString QwPromptSummary::PrintCSVHeader ( Int_t nEvents,
TString start_time,
TString end_time )
private

Definition at line 389 of file QwPromptSummary.cc.

390{
391 TString out = "";
392
393 Double_t goodEvents = 0.0;
394 TString referenceElementName = "N/A";
395
396 // Use the first element in the list to determine good events
397 if (fReferenceElement) {
398 goodEvents = fReferenceElement->GetNumGoodEvents() * fPatternSize;
399 referenceElementName = fReferenceElement->GetName();
400 } else {
401 QwError << "Warning: No reference element found in QwPromptSummary. Setting goodEvents=0." << QwLog::endl;
402 }
403
404 out += Form("Run: %d \n",fRunNumber);
405 out += "Start Time: "+start_time+"\nEnd Time: "+end_time+"\n";
406 out += Form("Number of events processed: %i\n",nEvents);
407 out += Form("Number of events in good multiplicity patterns: %3.0f\n", goodEvents);
408 out += Form("Percentage of good events: %3.1f %%\n", goodEvents/nEvents*100);
409 out += Form("Good events reference: %s (first element from parameter file)\n", referenceElementName.Data());
410 out += "=========================================================================\n";
411 out += "Yield Units: bcm(uA), cavq(uA), bpm(mm), sam(mV/uA)\n";
412 out += "Asymmetry/Difference Units: bcm(ppm), cavq(ppm), bpm(um), sam(ppm)\n";
413
414 out += "=========================================================================\n";
415
416
417
418 return out;
419};

References QwLog::endl(), fPatternSize, fReferenceElement, fRunNumber, and QwError.

Referenced by PrintCSV().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintTextSummary()

void QwPromptSummary::PrintTextSummary ( )

Definition at line 646 of file QwPromptSummary.cc.

647{
648 return;
649};

◆ PrintTextSummaryHeader()

TString QwPromptSummary::PrintTextSummaryHeader ( )
private

Definition at line 364 of file QwPromptSummary.cc.

365{
366 TString out = "";
367 // TString filename = "";
368
369 // filename = Form("summary_%d_%d.txt", fRunNumber, fRunletNumber);
370
371 out = "======= BEGIN ======= \n";
372 out += Form(" RUN = %5d RUNLET %2d \n\n\n\n\n\n", fRunNumber, fRunletNumber);
373 return out;
374};

References fRunletNumber, and fRunNumber.

◆ PrintTextSummaryTailer()

TString QwPromptSummary::PrintTextSummaryTailer ( )
private

Definition at line 379 of file QwPromptSummary.cc.

380{
381 TString out = "";
382
383 out = "==================================================\n";
384 return out;
385};

◆ SetPatternSize()

void QwPromptSummary::SetPatternSize ( const Int_t in)
inline

Definition at line 150 of file QwPromptSummary.h.

150{ fPatternSize=in; };

References fPatternSize.

Referenced by QwHelicityPattern::WritePromptSummary().

+ Here is the caller graph for this function:

◆ SetRunletNumber()

void QwPromptSummary::SetRunletNumber ( const Int_t in)
inline

Definition at line 147 of file QwPromptSummary.h.

147{fRunletNumber = in;};

References fRunletNumber.

◆ SetRunNumber()

void QwPromptSummary::SetRunNumber ( const Int_t in)
inline

Definition at line 144 of file QwPromptSummary.h.

144{fRunNumber = in;};

References fRunNumber.

◆ SetupElementList()

void QwPromptSummary::SetupElementList ( )
private

Definition at line 228 of file QwPromptSummary.cc.

229{
230 // Try to load from default parameter file first
231 std::string default_param_file = "prompt_summary.map";
232
233 try {
234 QwParameterFile paramfile(default_param_file);
236 if (fElementList.size() > 0) {
237 QwMessage << "QwPromptSummary: Loaded " << fElementList.size() << " elements from " << default_param_file << QwLog::endl;
238 return; // Successfully loaded from file
239 }
240 } catch (const std::exception& e) {
241 if (fLocalDebug) {
242 QwMessage << "QwPromptSummary: Could not load from " << default_param_file
243 << ", using default elements: " << e.what() << QwLog::endl;
244 }
245 }
246};

References QwLog::endl(), fElementList, fLocalDebug, LoadElementsFromParameterFile(), and QwMessage.

Referenced by QwPromptSummary(), and QwPromptSummary().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Size()

Int_t QwPromptSummary::Size ( ) const
inline

Definition at line 169 of file QwPromptSummary.h.

169{return fElementList.size();};

References fElementList.

Field Documentation

◆ fElementList

◆ fLocalDebug

◆ fPatternSize

Int_t QwPromptSummary::fPatternSize
private

Definition at line 179 of file QwPromptSummary.h.

Referenced by GetPatternSize(), PrintCSVHeader(), and SetPatternSize().

◆ fReferenceElement

PromptSummaryElement* QwPromptSummary::fReferenceElement {nullptr}

Definition at line 142 of file QwPromptSummary.h.

142{nullptr};

Referenced by AddElement(), and PrintCSVHeader().

◆ fRunletNumber

Int_t QwPromptSummary::fRunletNumber
private

◆ fRunNumber

Int_t QwPromptSummary::fRunNumber
private

The documentation for this class was generated from the following files: