action#
-
class action#
The abstract base class of all dataflow actions (columns, selections, and queries).
The order of execution of an action’s methods are as follows:
vary()immediately after the instantiation of an action (if it is not nominal).initialize()before entering the entry loop.execute()for each entry.finalize()after exiting the entry loop.
Subclassed by queryosity::column::node, queryosity::dataset::source, queryosity::query::node
Public Functions
-
inline virtual void vary(const std::string &variation_name)#
Inform this instance that it has been varied by the variation name.
This method is intended to allow systematic variations of a custom action that are triggered by input columns to be handled manually. It is not invoked for nominal actions.
- Parameters:
variation_name – [in] Variation name.
-
virtual void initialize(unsigned int slot, unsigned long long begin, unsigned long long end) = 0#
Initialize the action.
- Parameters:
slot – [in] The thread slot index.
begin – [in] First
entryto be processed by the action.end – [in] Last
entry - 1to be processed by the action.
-
virtual void execute(unsigned int slot, unsigned long long entry) = 0#
Execute the action.
- Parameters:
slot – [in] The thread slot index.
begin – [in] The
entrybeing processed by the action.
-
virtual void finalize(unsigned int slot) = 0#
Finalize the action.
- Parameters:
slot – [in] The thread slot index.