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 __BOOLEANTRIGGER_H__
00030 #define __BOOLEANTRIGGER_H__
00031
00032 #include "X3DTriggerNode.h"
00033 #include "SFTime.h"
00034 #include "SFBool.h"
00035
00036 namespace H3D {
00037
00045
00046 class H3DAPI_API BooleanTrigger : public X3DTriggerNode {
00047 public:
00048
00050 class H3DAPI_API SetBoolean: public TypedField < SFBool, SFTime > {
00051 protected:
00052
00053 virtual void update() {
00054 value = true;
00055 }
00056 };
00057
00058 friend class SetBoolean;
00059
00061 BooleanTrigger( Inst< SFNode > _metadata = 0,
00062 Inst< SFTime > _set_triggerTime = 0,
00063 Inst< SetBoolean > _triggerTrue = 0);
00064
00071 auto_ptr< SFTime > set_triggerTime;
00072
00079 auto_ptr< SetBoolean > triggerTrue;
00080
00082 static H3DNodeDatabase database;
00083 };
00084 }
00085
00086 #endif