Apama
10.1.0.5
|
#include <correlator_plugin.h>
Public Member Functions | |
AP_TypeDiscriminator (AP_PLUGIN_CALL *getDiscriminator)(const AP_PluginType *obj) | |
AP_PluginChunk *AP_PLUGIN_CALL * | getChunkValue (const AP_PluginType *obj) |
void (AP_PLUGIN_CALL *setChunkValue)(const AP_PluginType *obj | |
AP_int64 (AP_PLUGIN_CALL *getIntegerValue)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *setIntegerValue)(AP_PluginType *obj | |
AP_float64 (AP_PLUGIN_CALL *getFloatValue)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *setFloatValue)(AP_PluginType *obj | |
AP_decimal (AP_PLUGIN_CALL *getDecimalValue)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *setDecimalValue)(AP_PluginType *obj | |
AP_bool (AP_PLUGIN_CALL *getBooleanValue)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *setBooleanValue)(AP_PluginType *obj | |
const AP_char8 *AP_PLUGIN_CALL * | getStringValue (const AP_PluginType *obj) |
void (AP_PLUGIN_CALL *setStringValue)(AP_PluginType *obj | |
AP_uint32 (AP_PLUGIN_CALL *getSequenceLength)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *setSequenceLength)(const AP_PluginType *obj | |
AP_TypeDiscriminator (AP_PLUGIN_CALL *getSequenceType)(const AP_PluginType *obj) | |
void (AP_PLUGIN_CALL *createSequence)(const AP_PluginType *obj | |
AP_PluginType *AP_PLUGIN_CALL * | getSequenceElement (const AP_PluginType *obj, AP_uint32 index) |
void (AP_PLUGIN_CALL *copyFrom)(const AP_PluginType *obj | |
AP_PluginType *const *AP_PLUGIN_CALL * | getSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseSequenceElements)(const AP_PluginType *obj) | |
AP_PluginChunk *const *AP_PLUGIN_CALL * | getChunkSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseChunkSequenceElements)(const AP_PluginType *obj) | |
AP_int64 *AP_PLUGIN_CALL * | getIntegerSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseIntegerSequenceElements)(const AP_PluginType *obj) | |
AP_float64 *AP_PLUGIN_CALL * | getFloatSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseFloatSequenceElements)(const AP_PluginType *obj) | |
AP_decimal *AP_PLUGIN_CALL * | getDecimalSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseDecimalSequenceElements)(const AP_PluginType *obj) | |
AP_bool *AP_PLUGIN_CALL * | getBooleanSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseBooleanSequenceElements)(const AP_PluginType *obj) | |
const AP_char8 **AP_PLUGIN_CALL * | getStringSequenceElements (const AP_PluginType *obj, AP_uint32 start, AP_uint32 length) |
void (AP_PLUGIN_CALL *releaseStringSequenceElements)(const AP_PluginType *obj) | |
AP_PluginType_Functions::AP_bool | ( | AP_PLUGIN_CALL * | getBooleanValue | ) | const |
AP_PluginType_Functions::AP_decimal | ( | AP_PLUGIN_CALL * | getDecimalValue | ) | const |
AP_PluginType_Functions::AP_float64 | ( | AP_PLUGIN_CALL * | getFloatValue | ) | const |
AP_PluginType_Functions::AP_int64 | ( | AP_PLUGIN_CALL * | getIntegerValue | ) | const |
AP_PluginType_Functions::AP_TypeDiscriminator | ( | AP_PLUGIN_CALL * | getDiscriminator | ) | const |
AP_PluginType_Functions::AP_TypeDiscriminator | ( | AP_PLUGIN_CALL * | getSequenceType | ) | const |
AP_PluginType_Functions::AP_uint32 | ( | AP_PLUGIN_CALL * | getSequenceLength | ) | const |
AP_bool* AP_PLUGIN_CALL* AP_PluginType_Functions::getBooleanSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
AP_PluginChunk* const* AP_PLUGIN_CALL* AP_PluginType_Functions::getChunkSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
Note that the AP_Chunk pointers cannot be modified via this call. Use sequenceElement(), visitSequenceElements() or sequenceElements() instead, being sure to free any AP_Chunk instances that are replaced.
AP_PluginChunk* AP_PLUGIN_CALL* AP_PluginType_Functions::getChunkValue | ( | const AP_PluginType * | obj | ) |
AP_decimal* AP_PLUGIN_CALL* AP_PluginType_Functions::getDecimalSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
AP_float64* AP_PLUGIN_CALL* AP_PluginType_Functions::getFloatSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
AP_int64* AP_PLUGIN_CALL* AP_PluginType_Functions::getIntegerSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
AP_PluginType* AP_PLUGIN_CALL* AP_PluginType_Functions::getSequenceElement | ( | const AP_PluginType * | obj, |
AP_uint32 | index | ||
) |
The element AP_Type remains usable until the sequence AP_Type is destroyed.
AP_PluginType* const* AP_PLUGIN_CALL* AP_PluginType_Functions::getSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects.
const AP_char8** AP_PLUGIN_CALL* AP_PluginType_Functions::getStringSequenceElements | ( | const AP_PluginType * | obj, |
AP_uint32 | start, | ||
AP_uint32 | length | ||
) |
This may or may not require copying the original EPL objects. Strings pointed to by this sequence are only valid for the lifetime of a call into the plugin.
const AP_char8* AP_PLUGIN_CALL* AP_PluginType_Functions::getStringValue | ( | const AP_PluginType * | obj | ) |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setChunkValue | ) | const |
The correlator takes ownership of the new AP_PluginChunk; it should not be deleted by the plugin.
The new pointer may be null.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setIntegerValue | ) |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setFloatValue | ) |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setDecimalValue | ) |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setBooleanValue | ) |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setStringValue | ) |
Note that this is only possible on sequence elements and return values, not arguments (which are const)
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | setSequenceLength | ) | const |
Increasing the length will populate the sequence with default-initialised objects. Decreasing the length will remove items from the end.
You are not permitted to call setSequenceLength after calling sequenceElements without releasing the elements. If you call setSequenceLength any references returned from sequenceElement or operator[] are invalid and may not be used.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | createSequence | ) | const |
Member type can only be primitives, string or chunk.
Typically used for return values from functions.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | copyFrom | ) | const |
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseSequenceElements | ) | const |
Any arrays previously returned by sequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseChunkSequenceElements | ) | const |
Arrays previously returned by chunkSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseIntegerSequenceElements | ) | const |
Arrays previously returned by integerSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseFloatSequenceElements | ) | const |
Arrays previously returned by floatSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseDecimalSequenceElements | ) | const |
Arrays previously returned by getDecimalSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseBooleanSequenceElements | ) | const |
Arrays previously returned by booleanSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
AP_PluginType_Functions::void | ( | AP_PLUGIN_CALL * | releaseStringSequenceElements | ) | const |
Arrays previously returned by stringSequenceElements() immediately become invalid. This function is automatically called when a sequence AP_Type is destroyed, but can be invoked explicitly by a plugin to copy changes back during a long-running computation.
Note that string sequence element arrays do not own the strings they reference and will never delete a string the plugin has placed in the array - if the plugin has set a value, it must delete that string (and it cannot use the value in the array returned from stringSequenceElement