Les plug-in personnalisés nécessitent une interface standard.
Utilisez des objets primitifs pour éliminer une dépendance envers les versions de bibliothèque et les options de compilation. Vous pouvez ainsi utiliser des plug-in avec plusieurs versions de pipeline sans devoir régénérer le plug-in lorsque le pipeline change les versions de bibliothèque, de compilateur ou d'autres options. Vous devez inclure les prototypes d'interface C ou C++ suivants :
#ifdef _WIN32 #define _DLEXPORT __declspec(dllexport) #else #define _DLEXPORT #endif extern "C" { _DLEXPORT const int initPlugin(const char *configInfo, const uint configSize, char *errorStr, const uint maxStrSize); _DLEXPORT const char *getVersion(); _DLEXPORT const int score(const char *thresholdStr, const uint thresholdSize, const char *inboundStr, const uint inboundSize, const char *candidateStr, const uint candidateSize, char *result, const uint resultSize); };