Geant4  10.03.p03
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CexmcException Class Reference

#include <CexmcException.hh>

Inheritance diagram for CexmcException:
Collaboration diagram for CexmcException:

Public Member Functions

 CexmcException (CexmcExceptionType type)
 
 ~CexmcException () throw ()
 
const char * what (void) const throw ()
 

Detailed Description

Definition at line 92 of file CexmcException.hh.

Constructor & Destructor Documentation

CexmcException::CexmcException ( CexmcExceptionType  type)
explicit

Definition at line 49 of file CexmcException.cc.

49  : type( type )
50 {
51 }
CexmcException::~CexmcException ( )
throw (
)

Definition at line 54 of file CexmcException.cc.

55 {
56 }

Member Function Documentation

const char * CexmcException::what ( void  ) const
throw (
)

Definition at line 59 of file CexmcException.cc.

60 {
61  switch ( type )
62  {
64  return CEXMC_LINE_START "Unspecified system exception.";
66  return CEXMC_LINE_START "Event action was not initialized.";
68  return CEXMC_LINE_START "Exception in command line arguments. "
69  "Check your command line arguments.";
71  return CEXMC_LINE_START "Exception in PreInit phase. "
72  "Probably you did not specify preinit macro or production model "
73  "in it.";
75  return CEXMC_LINE_START "File compress exception. "
76  "Check if the file exists and output directory is writable.";
78  return CEXMC_LINE_START "Read project is incomplete. "
79  "Check if the read project has complete set of data files.";
80  case CexmcProjectExists :
81  return CEXMC_LINE_START "Project you try to write exists. "
82  "Use command line option '-y' to force project override.";
84  return CEXMC_LINE_START "Command is not allowed here. "
85  "Probably you tried to issue a command which would override "
86  "read-only settings in the read project.";
88  return CEXMC_LINE_START "Bad angular range. "
89  "Check specified angular ranges (probably they mismatch ranges "
90  "in the read project).";
91  case CexmcBadThreshold :
92  return CEXMC_LINE_START "Bad threshold. "
93  "Check specified thresholds (probably they mismatch thresholds "
94  "in the read project).";
96  return CEXMC_LINE_START "Bad calorimeter trigger algorithm. "
97  "Check specified calorimeter trigger algorithm (probably it "
98  "mismatches algorithm in the read project).";
100  return CEXMC_LINE_START "Bad outer crystals veto algorithm. "
101  "Check specified outer crystals veto algorithm (probably it "
102  "mismatches algorithm in the read project).";
104  return CEXMC_LINE_START "Bad outer crystals veto fraction. "
105  "Check specified outer crystals veto fraction (probably it "
106  "has higher value than in the read project).";
108  return CEXMC_LINE_START "Calorimeter sensitive region was not "
109  "initialized. Check gdml source file.";
111  return CEXMC_LINE_START "Calorimeter geometry data was not "
112  "initialized. Check gdml source file.";
114  return CEXMC_LINE_START "Multiple detector roles for one logical "
115  "volume. Check gdml source file.";
117  return CEXMC_LINE_START "Kinematics exception. "
118  "Check your production model.";
119  case CexmcPoorEventData :
120  return CEXMC_LINE_START "Cannot create rich event data from poor "
121  "original data. Set less value of event data verbose level.";
123  return CEXMC_LINE_START "Incompatible geometry definition. "
124  "Check your geometry data.";
126  return CEXMC_LINE_START "Production model provided is incomplete. "
127  "Check that your production model defines all particles.";
129  return CEXMC_LINE_START "Production model provided is incompatible "
130  "with physical process that tries to bind it.";
132  return CEXMC_LINE_START "Beam and incident particles mismatch. "
133  "Instantiated reconstructor will not give reliable results in "
134  "this case. Make sure that beam particle and incident particle "
135  "of provided production model are same.";
137  return CEXMC_LINE_START "An angular range is not valid. "
138  "Check specified angular ranges.";
139 #ifdef CEXMC_USE_CUSTOM_FILTER
140  case CexmcCFBadSource :
141  return CEXMC_LINE_START "Custom filter source file does not exist or "
142  "damaged. Check your command line arguments or source file.";
143  case CexmcCFParseError :
144  return CEXMC_LINE_START "Custom filter source file contains errors. "
145  "Check your custom filter source file.";
146  case CexmcCFUninitialized :
147  return CEXMC_LINE_START "Custom filter was not properly initialized.";
148  case CexmcCFUninitializedVector :
149  return CEXMC_LINE_START "Custom filter: A vector variable was not "
150  "initialized.";
151  case CexmcCFUnexpectedContext :
152  return CEXMC_LINE_START "Custom filter: a variable or function call is "
153  "in wrong type context (scalar when a vector is expected or "
154  "vice versa). Check your custom filter script.";
155  case CexmcCFUnexpectedFunction :
156  return CEXMC_LINE_START "Custom filter: a function is unknown or in "
157  "wrong type context. Check your custom filter script.";
158  case CexmcCFUnexpectedVariable :
159  return CEXMC_LINE_START "Custom filter: a variable is unknown or in "
160  "wrong type context. Check your custom filter script.";
161  case CexmcCFUnexpectedVariableUsage :
162  return CEXMC_LINE_START "Custom filter: a variable is used in wrong "
163  "type context (scalar when a vector is expected or vice "
164  "versa). Check your custom filter script.";
165  case CexmcCFUnexpectedVectorIndex :
166  return CEXMC_LINE_START "Custom filter: a vector variable with wrong "
167  "index. Indices of vectors should start from 1. Check your "
168  "custom filter script.";
169 #endif
170  case CexmcWeirdException :
171  return CEXMC_LINE_START "A weird exception occured. "
172  "The world must collapse now.";
173  default :
174  return CEXMC_LINE_START "Unknown exception.";
175  }
176 }
#define CEXMC_LINE_START
Definition: CexmcCommon.hh:52

Here is the caller graph for this function:


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