BVB Source Codes

CRYENGINE Show SelectionTreeDebugger.h Source code

Return Download CRYENGINE: download SelectionTreeDebugger.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #ifndef __SelectionTreeDebugger_H__
  4. #define __SelectionTreeDebugger_H__
  5.  
  6. #ifndef RELEASE
  7.         #define BST_DEBUG_START_EVAL(actor, tree, vars)  { if (gEnv->IsEditor()) CSelectionTreeDebugger::GetInstance()->StartEvaluation(actor, tree, vars); }
  8.         #define BST_DEBUG_EVAL_NODE(node)                { if (gEnv->IsEditor()) CSelectionTreeDebugger::GetInstance()->EvaluateNode(node); }
  9.         #define BST_DEBUG_EVAL_NODECONDITON(node, cond)  { if (gEnv->IsEditor()) CSelectionTreeDebugger::GetInstance()->EvaluateNodeCondition(node, cond); }
  10.         #define BST_DEBUG_EVAL_STATECONDITON(node, cond) { if (gEnv->IsEditor()) CSelectionTreeDebugger::GetInstance()->EvaluateStateCondition(node, cond); }
  11.         #define BST_DEBUG_END_EVAL(actor, nodeid)        { if (gEnv->IsEditor()) CSelectionTreeDebugger::GetInstance()->EndEvaluation(actor, nodeid); }
  12. #else
  13.         #define BST_DEBUG_START_EVAL
  14.         #define BST_DEBUG_EVAL_NODE
  15.         #define BST_DEBUG_EVAL_NODECONDITON
  16.         #define BST_DEBUG_EVAL_STATECONDITON
  17.         #define BST_DEBUG_END_EVAL
  18. #endif
  19.  
  20. #ifndef RELEASE
  21.         #include <CryAISystem/ISelectionTreeManager.h>
  22.         #include "SelectionTree.h"
  23.         #include "SelectionVariables.h"
  24.         #include "SelectionTreeNode.h"
  25.         #include "SelectionCondition.h"
  26.  
  27. class CSelectionTreeDebugger
  28.         : public ISelectionTreeDebugger
  29. {
  30. public:
  31.         static CSelectionTreeDebugger* GetInstance();
  32.  
  33.         void                           StartEvaluation(const CAIActor* pActor, const SelectionTree& tree, const SelectionVariables& vars);
  34.         void                           EvaluateNode(const SelectionTreeNode& node);
  35.         void                           EvaluateNodeCondition(const SelectionTreeNode& node, bool condition);
  36.         void                           EvaluateStateCondition(const SelectionTreeNode& node, bool condition);
  37.         void                           EndEvaluation(const CAIActor* pActor, SelectionNodeID currentNodeId);
  38.  
  39.         virtual void                   SetObserver(ISelectionTreeObserver* pObserver, const char* nameAI);
  40.  
  41. private:
  42.         void ReadNodeInfo(const SelectionTree& tree, ISelectionTreeObserver::STreeNodeInfo& outNode, const SelectionTreeNode& inNode);
  43.  
  44. private:
  45.         CSelectionTreeDebugger();
  46.  
  47.         ISelectionTreeObserver* m_pObserver;
  48.         string                  m_AIName;
  49.         string                  m_CurrTree;
  50.         const CAIActor*         m_AI;
  51. };
  52. #endif
  53.  
  54. #endif
  55.  
downloadSelectionTreeDebugger.h Source code - Download CRYENGINE Source code
Related Source Codes/Software:
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top