EventCodeGenBase

template<typename Derived>
class EventCodeGenBase : public rrllvm::CodeGenBase<EventCodeGenBase_FunctionPtr>

Base class for evaluating various types of SBML events.

Public Types

typedef EventCodeGenBase_FunctionPtr FunctionPtr

Public Functions

inline EventCodeGenBase(const ModelGeneratorContext &mgc)
inline virtual ~EventCodeGenBase()
virtual llvm::Value *codeGen()
inline bool eventCodeGen(llvm::Value *modelData, llvm::Value *data, const libsbml::Event *event)

derived classes must implement this method to generate the event trigger / assignment code.

Derived classes are called with an event and this call is in the middle of the code generation block. So, a derived class should simply begin outputing the instruction so process all of the event assignments / triggers in this call. The base class takes care of generating the return value.