00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * Mark Elendt 00008 * Side Effects Software Inc 00009 * 477 Richmond Street West 00010 * Toronto, Ontario 00011 * Canada M5V 3E7 00012 * 416-504-9876 00013 * 00014 * NAME: OP_Caller.h ( OP Library, C++) 00015 * 00016 * COMMENTS: Sub-class of the UT_OpCaller which is used to handle op 00017 * references. 00018 */ 00019 00020 #ifndef __OP_Caller__ 00021 #define __OP_Caller__ 00022 00023 #include "OP_API.h" 00024 #include <UT/UT_IntArray.h> 00025 #include <UT/UT_PtrArray.h> 00026 #include <UT/UT_OpCaller.h> 00027 00028 class OP_Node; 00029 00030 class OP_API OP_Caller : public UT_OpCaller { 00031 public: 00032 OP_Caller(OP_Node *node); 00033 virtual ~OP_Caller(); 00034 00035 virtual int getOpId(); 00036 virtual void referenceOtherOp(int opid, UT_OpCallee *cache); 00037 00038 OP_Node *getNode() { return myNode; } 00039 void clearReferences(); 00040 00041 protected: 00042 OP_Node *myNode; 00043 UT_IntArray myInterests; 00044 UT_PtrArray<UT_OpCallee *> myCacheList; 00045 }; 00046 00047 #endif
1.5.9