/* ** Copyright (C) 1999 Microsoft Corporation. All Rights Reserved. ** ** File: objectpointingatcondition.h ** ** Author: ** ** Description: ** Header file for the training library "objectpointingatcondition" interface. ** ** History: */ #ifndef _OBJECT_POINTING_AT_CONDITION_H_ #define _OBJECT_POINTING_AT_CONDITION_H_ #ifndef _CONDITION_H_ #include "Condition.h" #endif //_CONDITION_H_ #ifndef _ABSTRACT_TARGET_H_ #include "AbstractTarget.h" #endif //_ABSTRACT_TARGET_H_ namespace Training { //------------------------------------------------------------------------------ // class definitions //------------------------------------------------------------------------------ class ObjectPointingAtCondition : public Condition { public: /* void */ ObjectPointingAtCondition (ImodelIGC* pObject, ImodelIGC* pTarget); /* void */ ObjectPointingAtCondition (ImodelIGC* pObject, ObjectType targetType, ObjectID targetID); /* void */ ObjectPointingAtCondition (ImodelIGC* pObject, AbstractTarget* pTarget); virtual /* void */ ~ObjectPointingAtCondition (void); virtual bool Evaluate (void); void SetVectorMask (const Vector& vectorMask); void ClearVectorMask (void); void SetMinimumAngle (float fMinimumAngle); protected: Vector MaskedVector (const Vector& vector); protected: AbstractTarget* m_pObject; AbstractTarget* m_pTarget; Vector m_vectorMask; float m_fMinimumAngle; }; //------------------------------------------------------------------------------ } #endif //_OBJECT_POINTING_AT_CONDITION_H_