26 int main(
int narg,
char *argv[])
49 tcgetattr(fileno(stdin), &t);
50 t.c_lflag &= (~ICANON);
52 tcsetattr(fileno(stdin), TCSANOW, &t);
60 cout <<
"-- Only DEPICSvalue objects requested" << endl;
61 cout <<
"-- * Enabling EVIO file mapping and sparse readout" << endl;
62 cout <<
"-- * Automatically invoking -f and -s options" << endl;
64 gPARMS->SetParameter(
"EVIO:SPARSE_READ",
true);
65 gPARMS->SetParameter(
"EVIO:EVENT_MASK",
string(
"EPICS"));
72 app->SetShowTicker(0);
73 app->monitor_heartbeat =
false;
98 JEventLoop *loop =
new JEventLoop(app);
102 cout<<
" Factory List"<<endl;
103 cout<<
"-------------------------"<<endl;
107 vector<JFactory_base*> factories = loop->GetFactories();
108 vector<JFactory_base*>::iterator iter = factories.begin();
109 for(; iter!=factories.end(); iter++){
110 cout<<
" "<<(*iter)->GetDataClassName();
111 if(strlen((*iter)->Tag()) !=0){
112 cout<<
" : "<<(*iter)->Tag();
117 cout<<
" "<<factories.size()<<
" factories registered"<<endl;
128 for(
int i=1;i<narg;i++){
129 if(argv[i][0] !=
'-')
continue;
160 cout <<
"WARNING: -f option is deprecated as it is now the default" << endl;
188 cout<<
"Usage:"<<endl;
189 cout<<
" hd_dump [options] source1 source2 ..."<<endl;
191 cout<<
"Print the contents of a Hall-D data source (e.g. a file)"<<endl;
192 cout<<
"to the screen."<<endl;
194 cout<<
"Options:"<<endl;
196 cout<<
" -h Print this message"<<endl;
197 cout<<
" -Dname Print the data of type \"name\" (can be used multiple times)"<<endl;
198 cout<<
" -A Print ALL data types (overrides and -DXXX options)"<<endl;
199 cout<<
" -L List available factories and exit"<<endl;
200 cout<<
" -p Don't pause for keystroke between events (def. is to pause)"<<endl;
201 cout<<
" -s Skip events which don't have any of the specified data types"<<endl;
202 cout<<
" -a List types and number of associated objects"<<endl;
203 cout<<
" -S Don't supress printing of factories with no objects in summary"<<endl;
204 cout<<
" -c Print summary header lisiting for select factories."<<endl;
205 cout<<
" -V Print summary header lisiting for all factories."<<endl;
206 cout<<
" (warning: this activates every single factory!)"<<endl;
207 cout<<
" -b Print event status bits"<<endl;
208 cout<<
" -e Don't allow automatic EVIO sparse readout for EPICS data"<<endl;
bool LIST_ASSOCIATED_OBJECTS
bool PRINT_SUMMARY_HEADER
bool PAUSE_BETWEEN_EVENTS
void ParseCommandLineArguments(int &narg, char *argv[])
bool ALLOW_SPARSIFIED_EVIO
void PrintFactoryList(DApplication *app)
void Usage(JApplication &app)
int main(int argc, char *argv[])