88 lines
2.7 KiB
C++
Executable File
88 lines
2.7 KiB
C++
Executable File
/**********************************************************************
|
|
*<
|
|
FILE: dummy.h
|
|
|
|
DESCRIPTION:
|
|
|
|
CREATED BY: Dan Silva
|
|
|
|
HISTORY:
|
|
|
|
*> Copyright (c) 1994, All Rights Reserved.
|
|
**********************************************************************/
|
|
|
|
#ifndef __DUMMY__H
|
|
#define __DUMMY__H
|
|
|
|
|
|
extern CoreExport Class_ID dummyClassID;
|
|
|
|
class DummyObject: public HelperObject {
|
|
friend class DummyObjectCreateCallBack;
|
|
friend BOOL CALLBACK DummyParamDialogProc( HWND hDlg, UINT message,
|
|
WPARAM wParam, LPARAM lParam );
|
|
|
|
// Mesh cache
|
|
Mesh mesh;
|
|
long dumFlags;
|
|
Point3 color;
|
|
Box3 box;
|
|
Interval valid;
|
|
void BuildMesh();
|
|
void UpdateMesh();
|
|
|
|
// inherited virtual methods for Reference-management
|
|
RefResult NotifyRefChanged( Interval changeInt, RefTargetHandle hTarget,
|
|
PartID& partID, RefMessage message );
|
|
|
|
public:
|
|
CoreExport DummyObject();
|
|
|
|
CoreExport Box3 GetBox() const;
|
|
CoreExport void SetBox(Box3& b);
|
|
CoreExport void SetColor(Point3 color);
|
|
CoreExport void EnableDisplay();
|
|
CoreExport void DisableDisplay();
|
|
CoreExport void SetValidity(Interval v);
|
|
|
|
// inherited virtual methods:
|
|
// From BaseObject
|
|
CoreExport int HitTest(TimeValue t, INode* inode, int type, int crossing, int flags, IPoint2 *p, ViewExp *vpt);
|
|
CoreExport void Snap(TimeValue t, INode* inode, SnapInfo *snap, IPoint2 *p, ViewExp *vpt);
|
|
CoreExport int Display(TimeValue t, INode* inode, ViewExp *vpt, int flags);
|
|
CoreExport CreateMouseCallBack* GetCreateMouseCallBack();
|
|
CoreExport RefTargetHandle Clone(RemapDir& remap = NoRemap());
|
|
Interval ObjectValidity(TimeValue t) { return valid; }
|
|
|
|
// From Object
|
|
CoreExport ObjectState Eval(TimeValue time);
|
|
void InitNodeName(TSTR& s);
|
|
int DoOwnSelectHilite() {return 1; }
|
|
int IsRenderable(){ return 0; }
|
|
TCHAR *GetObjectName();
|
|
|
|
// From Object
|
|
CoreExport void GetWorldBoundBox(TimeValue t, INode *mat, ViewExp *vpt, Box3& box );
|
|
CoreExport void GetLocalBoundBox(TimeValue t, INode *mat, ViewExp *vpt, Box3& box );
|
|
CoreExport void GetDeformBBox(TimeValue t, Box3& box, Matrix3 *tm, BOOL useSel=FALSE );
|
|
|
|
|
|
// IO
|
|
CoreExport IOResult Save(ISave *isave);
|
|
CoreExport IOResult Load(ILoad *iload);
|
|
|
|
// From ReferenceMaker
|
|
CoreExport void RescaleWorldUnits(float f);
|
|
|
|
// Animatable methods
|
|
void DeleteThis() { delete this; }
|
|
Class_ID ClassID() { return dummyClassID; }
|
|
void GetClassName(TSTR& s);
|
|
int IsKeyable(){ return 1;}
|
|
LRESULT CALLBACK TrackViewWinProc( HWND hwnd, UINT message,
|
|
WPARAM wParam, LPARAM lParam ){return(0);}
|
|
};
|
|
|
|
CoreExport ClassDesc* GetDummyObjDescriptor();
|
|
#endif // __DUMMY__H
|