BVB Source Codes

CRYENGINE Show GoalPipeXMLReader.h Source code

Return Download CRYENGINE: download GoalPipeXMLReader.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #ifndef __GoalPipeXMLReader_H__
  4. #define __GoalPipeXMLReader_H__
  5.  
  6. #include <CryAISystem/IGoalPipe.h>
  7.  
  8. class CPipeManager;
  9.  
  10. class CGoalPipeXMLReader
  11. {
  12. public:
  13.         CGoalPipeXMLReader();
  14.  
  15.         bool LoadGoalPipesFromXmlFile(const char* filename);
  16.         bool LoadGoalPipesFromXmlNode(const XmlNodeRef& root);
  17.  
  18.         void ParseGoalPipe(const char* szGoalPipeName, const XmlNodeRef goalPipeNode, CPipeManager::ActionToTakeWhenDuplicateFound actionToTakeWhenDuplicateFound = CPipeManager::ReplaceDuplicateAndReportError);
  19.  
  20. private:
  21.         void   ParseGoalOps(IGoalPipe* pGoalPipe, const XmlNodeRef& root,
  22.                             string sIfLabel = string(), bool b_IfElseEnd_Halves_ReverseOrder = true);
  23.         void   ParseGoalOp(IGoalPipe* pGoalPipe, const XmlNodeRef& goalOpNode);
  24.  
  25.         string GenerateUniqueLabelName();
  26.  
  27. private:
  28.         class CXMLAttrReader
  29.         {
  30.                 typedef std::pair<const char*, int> TRecord;
  31.                 std::vector<TRecord> m_dictionary;
  32.  
  33.         public:
  34.                 void Add(const char* szKey, int nValue) { m_dictionary.push_back(TRecord(szKey, nValue)); }
  35.                 bool Get(const char* szKey, int& nValue);
  36.         };
  37.  
  38.         CXMLAttrReader        m_dictBranchType;
  39.  
  40.         IGoalPipe::EGroupType m_currentGrouping;
  41.  
  42.         uint32                m_nextUniqueLabelID;
  43. };
  44.  
  45. #endif  // #ifndef __GoalPipeXMLReader_H__
  46.  
downloadGoalPipeXMLReader.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