#define COUT ////////////////////////////////////////////////////////////////////// // JTestObj.cpp - a minimal external module for NeatTools // generated by Rob Salgado's ModuleMaker // // ////////////////////////////////////////////////////////////////////// #if !defined( _JTestObj_h ) #define _JTestObj_h //include the header files of the base class (here, JAddObj) // #include "JAddObj.h" #ifdef COUT #include #include #endif static int count=0; static int name=0; //---------------------------------------------------------------- // // class JTestObj // class #if defined(_EXTERNAL_DLL) DllExport #else DllImport #endif JTestObj : public JAddObj { //derives from base class protected: //---------------------------------------------- // PERSISTENCY-RELATED METHODS virtual void writeContent(class JOutputStream& os); virtual void readContent(class JDictionary& dict); public: enum { INTEGER_INPUT, STRING_INPUT , NUMBER_OF_INPUTS}; //convenient labels for 2 inputs enum { INTEGER_OUTPUT, STRING_OUTPUT, NUMBER_OF_OUTPUTS }; //convenient labels for 2 outputs //---------------------------------------------- // BASIC METHODS [ Register() is declared in JObject ] JTestObj(); //constructor JTestObj(const JTestObj & src); //if you define your own copy constructor ~JTestObj(); virtual const char* className() const; virtual JObject* clone() const; //---------------------------------------------- // EVENT-BROADCAST-RELATED METHODS virtual void engine(int n, JLinkObj& link); virtual void access(int n, JLinkObj& link, const JDataType& data); virtual JArray getProperties(); virtual boolean updateProperty(JProperty& prop); //---------------------------------------------- // DISPLAY-RELATED METHODS virtual void paint(JGraphics g, double dx, double dy, JRegion& rgn, double scale); //---------------------------------------------- // INFORMATION-RELATED METHODS virtual int inputType(int n); virtual int outputType(int n); virtual boolean inputAllowed(int n); virtual boolean outputAllowed(int n); virtual JString inputTag(int n); virtual JString outputTag(int n); virtual JFRect inputArea(int n); virtual JFRect outputArea(int n); virtual int inputFace(int n); virtual int outputFace(int n); virtual JFPoint inputPoint(int n, JLinkObj& link); virtual JFPoint outputPoint(int n, JLinkObj& link); protected: //---------------------------------------------- // DATA boolean doRepaint; // flag: repaint needed // if something has changed //---------------------------------------------- // PERSISTENT DATA int persistentInteger1; JString persistentString1; }; #endif