ODIN
|
#include <seqcounter.h>
Inherits SeqDriverBase.
Public Member Functions | |
virtual bool | prep_driver ()=0 |
virtual void | update_driver (const SeqCounter *counter, const SeqObjList *seqlist, const List< SeqVector, const SeqVector *, const SeqVector & > *vectors) const =0 |
virtual double | get_preduration () const =0 |
virtual double | get_postduration () const =0 |
virtual double | get_preduration_inloop () const =0 |
virtual double | get_postduration_inloop () const =0 |
virtual bool | create_program (programContext &context, const STD_string &loopkernel) const =0 |
virtual STD_string | get_program_head (programContext &context, const STD_string &loopkernel, unsigned int times) const =0 |
virtual STD_string | get_program_tail (programContext &context, const STD_string &loopkernel, unsigned int times) const =0 |
virtual STD_string | get_program_head_unrolled (programContext &context, unsigned int index) const =0 |
virtual STD_string | get_program_iterator (programContext &context) const =0 |
virtual void | pre_vecprepevent (eventContext &context) const =0 |
virtual void | post_vecprepevent (eventContext &context, int repcounter) const =0 |
virtual void | outdate_cache () const =0 |
virtual bool | unroll_program (const SeqCounter *counter, const SeqObjList *seqlist, const List< SeqVector, const SeqVector *, const SeqVector & > *vectors, programContext &context) const =0 |
virtual SeqCounterDriver * | clone_driver () const =0 |
The base class for platform specific drivers of counters objects to iterate over vectors
Definition at line 38 of file seqcounter.h.
|
pure virtual |
Return an exact copy of this driver
|
pure virtual |
Asks driver whether a program has to be created at all for the given context and loopkernel, useful to avoid 'empty' loops in the program
|
pure virtual |
Duration the loop itself takes after its kernel is iterated
|
pure virtual |
Duration the loop itself takes after each iteration
|
pure virtual |
Duration the loop itself takes before iteration is started
|
pure virtual |
Duration the loop itself takes before each iteration
|
pure virtual |
Returns the head of the loop, i.e. code before the loop kernel
|
pure virtual |
Returns the head of the loop, i.e. code before the loop kernel if the loop is unrolled
|
pure virtual |
Returns commands to iterate vectors manually
|
pure virtual |
Returns the tail of the loop, i.e. code after the loop kernel
|
pure virtual |
Will be called if any attribute of the counter was changed
|
pure virtual |
Will be called after vectors are prepped for the current iteration If repcounter>=0, the repetition display of the platform will be updated to 'repcounter'
|
pure virtual |
Will be called before vectors are prepped for the current iteration
|
pure virtual |
Will be called once during prepping the sequence
|
pure virtual |
Asks driver whether the loop should be unrolled i.e. whether each iteration will be explicitely written to the program, seqlist can be zero
|
pure virtual |
Function to update driver internals which is called before the driver is queried for actions, seqlist can be zero