00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00027
00029 #ifndef __DEVICEINFO_H__
00030 #define __DEVICEINFO_H__
00031
00032 #include "X3DBindableNode.h"
00033 #include "H3DHapticsDevice.h"
00034 #include "MFNode.h"
00035
00036 namespace H3D {
00043 class H3DAPI_API DeviceInfo : public X3DBindableNode {
00044 public:
00045 typedef TypedMFNode< H3DHapticsDevice > MFDevice;
00046
00048 DeviceInfo( Inst< SFSetBind > _set_bind = 0,
00049 Inst< SFNode > _metadata = 0,
00050 Inst< SFTime > _bindTime = 0,
00051 Inst< SFBool > _isBound = 0,
00052 Inst< MFDevice > _device = 0 );
00053
00055 static inline DeviceInfo *getActive() {
00056 return static_cast< DeviceInfo * >( X3DBindableNode::getActive( "DeviceInfo" ) );
00057 }
00058
00060 virtual void initialize();
00061
00063 virtual void toStackTop();
00064
00066 virtual void removeFromStack();
00067
00069 virtual void renderStyli();
00070
00074 auto_ptr< MFDevice > device;
00075
00076 static H3DNodeDatabase database;
00077 };
00078 }
00079
00080 #endif