00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __SOP_HOM_h__
00018 #define __SOP_HOM_h__
00019
00020 #include "SOP_API.h"
00021 #include "SOP_Node.h"
00022
00023 class SOP_API SOP_HOM : public SOP_Node
00024 {
00025 public:
00026 SOP_HOM(
00027 OP_Network *network, const char *name, OP_Operator *script_op_type);
00028
00029
00030
00031 bool isCooking() const { return myIsCooking; }
00032
00033
00034
00035
00036 GU_DetailHandle &getDetailHandle() { return myGdpHandle; }
00037
00038 virtual OP_ERROR cookMySop(OP_Context &context);
00039
00040
00041
00042
00043 void setCurPoint(GEO_Point *point)
00044 { myCurPt[0] = point; }
00045 void setCurPrim(GEO_Primitive *prim)
00046 { myCurPrim[0] = prim; }
00047 void setCurVertex(GEO_Vertex *vertex, int vertex_num)
00048 { myCurVtx[0] = vertex; myCurVtxNum[0] = vertex_num; }
00049
00050 protected:
00051 virtual void cookWithHOM() = 0;
00052
00053 private:
00054 bool myIsCooking;
00055 };
00056
00057 #endif