Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Related Pages  

plugin.h

00001 /* plugin.h
00002  * Last modified: 
00003  * Authors: Daniel Venkitachalam <venki-d@ee.uwa.edu.au>
00004  *          Leon Koch <leon@redfishsoftware.com.au>
00005  */
00010 #ifndef PLUGIN_H
00011 #define PLUGIN_H
00012 
00013 #ifdef HAVE_CONFIG_H
00014 #include <config.h>
00015 #endif
00016 
00017 #include "FW/labImage.h"
00018 #include "improv_plugin.h"
00019 
00020 class Plugin
00021 {
00022         public:
00024                 Plugin(void) {}
00026                 virtual ~Plugin(void) {}
00027 
00029                 virtual pluginReturnType processId(int id, Picture **in, Picture *out, float *params, void *result) = 0;
00031                 virtual void printInfo(void) = 0;
00033                 virtual void listOps(void) = 0;
00035                 virtual bool isReady(void) = 0;
00037                 virtual unsigned int getNumOps(void) = 0;
00039                 virtual bool getOpInfo(int id, char** category, char** name, unsigned int* num_inputs, unsigned int* num_params, char*** param_names, pluginResultType *resultType, size_t *resultSize) = 0;
00041                 virtual int getUniqueId(void) = 0;
00043                 virtual const char *getFileName(void) = 0;
00044 
00045         protected:
00047                 bool ready;
00048                 
00049 };
00050 
00051 #endif
00052 

Generated on Tue Apr 1 11:01:16 2003 for ImprovQT by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002