50 maxLoops_(pset.getUntrackedParameter<int>(
"maxLoops", -1)),
52 shouldStopLoop_(
false),
53 shouldStopProcess_(
false) {
67 std::cout <<
"Event could not be found. Nothing done. Try again.\n";
70 std::cout <<
"\nWhat should we do next?\n";
73 std::cout <<
"(0) process the next event\n";
75 std::cout <<
"(0) process the next event if it exists (at last event in the open file. there are more files)\n";
77 std::cout <<
"(0) will stop the loop because this is the last event\n";
79 std::cout <<
"(0) process the next event (if it exists)\n";
84 std::cout <<
"(1) process the previous event\n";
86 std::cout <<
"(1) process the previous event if there are any (at first event in the open file. there are previous files)\n";
88 std::cout <<
"(1) will stop the loop because this is the first event\n";
91 std::cout <<
"(2) process a specific event\n";
95 std::cout <<
"(4) stop process" << std::endl;
98 bool inputFailed =
false;
101 if(!(std::cin >> x) || x < 0 || x > 4) {
104 std::cin.ignore(10000,
'\n');
105 std::cout <<
"Please enter numeric characters only. The value must be in the range 0 to 4 (inclusive). Please try again." << std::endl;
109 std::cout <<
"The source cannot do random access. 1 and 2 are illegal values. Please try again." << std::endl;
111 }
while(inputFailed);
123 if(!(std::cin >> x)) {
126 std::cin.ignore(10000,
'\n');
127 std::cout <<
"Please enter numeric characters only. Please try again." << std::endl;
129 }
while(inputFailed);
131 std::cout <<
"Which luminosity block?" << std::endl;
134 if(!(std::cin >> x)) {
137 std::cin.ignore(10000,
'\n');
138 std::cout <<
"Please enter numeric characters only. Please try again." << std::endl;
140 }
while(inputFailed);
142 std::cout <<
"Which event?" << std::endl;
145 if(!(std::cin >> x)) {
148 std::cin.ignore(10000,
'\n');
149 std::cout <<
"Please enter numeric characters only. Please try again." << std::endl;
151 }
while(inputFailed);
bool canRandomAccess() const
Returns 'true' if the job's source can randomly access.
virtual ~NavigateEventsLooper()
NavigateEventsLooper const & operator=(NavigateEventsLooper const &)
bool lastOperationSucceeded() const
unsigned long long EventNumber_t
#define DEFINE_FWK_LOOPER(type)
virtual void startingNewLoop(unsigned int iIteration) override
unsigned int LuminosityBlockNumber_t
void setTransitionToEvent(edm::EventID const &iID)
void setTransitionToPreviousEvent()
ForwardState forwardState() const
Returns the present state of processing.
virtual Status endOfLoop(EventSetup const &es, unsigned int iCounter) override
void setTransitionToNextEvent()
volatile std::atomic< bool > shutdown_flag false
NavigateEventsLooper(ParameterSet const &pset)
ReverseState reverseState() const
virtual Status duringLoop(Event const &ev, EventSetup const &es, ProcessingController &pc) override