company logo

Provide context class action interface

Action functions within a context class are functions, which might be called via event actions defined in the Designer. The common interface for invoking action functions is the odaba::BaseContext::executeFunction() method, which may be overloaded in each context class.

Action functions are always called without parameters, i.e. functions called as actions must never get a parameter list. At least one implementation without parameter list is required for an action function. Action functions always return an int32 value. Returning -1 means that the action has not been executed and further action calls will be suppressed.

C++ context classes have to overload the executeFunction() method in order to map the action call (call by action name) into a function call. C# context classes need not provide an action interface, since methods can be invoked by name at run-time. Actions implemented as OSI functions need also not to be called via an action interface, since they can be loaded similar to C# functions at run-time by name.