reman3/Rayman_X/cpa/tempgrp/TID/Inc/IADEdtTr.hpp

151 lines
4.2 KiB
C++

// Classes for the Editor tree
//
// YB
//////////////////////////////////////////////
#ifndef _IA_DEBUGGER_EDITOR_TREE_
#define _IA_DEBUGGER_EDITOR_TREE_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include <afxtempl.h>
// For "IncAI.h" !!
#include "ACP_Base.h"
#include "IncAI.h"
// End For "IncAI.h" !!
typedef CList<class IAD_EditorTreeNode *, class IAD_EditorTreeNode *> IAD_tdListOfNodes;
#define IAD_NODE_DEPTH_UNKNOWN (-1)
class CPA_Actor;
//##########################################################################################
class IAD_EditorTreeNode
{
public:
//Constructor
// BEGIN ROMTEAM Cristi Petrescu 98-06-
IAD_EditorTreeNode( enum AIDebug_tdeSectionType_ _tdeNodeType,
tdstNodeInterpret *_p_stNode,
CPA_Actor *_pclParentActor,
IAD_EditorTreeNode *_pclParentNode,
short _wDepth,
CString _csNodeType,
CString _csNodeName = "",
CString _csValue = "",
CString _csReturnValue = "",
CString _csNodeAdditionnalInfo = "",
BOOL bSubtreeBuilded = TRUE,
unsigned short uwSubtreeTraceIndex = -1);
// END ROMTEAM Cristi Petrescu 98-06-
//Empty Constructor for Root
IAD_EditorTreeNode();
//Destructor
~IAD_EditorTreeNode();
//Members
public:
// BEGIN ROMTEAM Cristi Petrescu 98-06-
// used for partial tree construction
BOOL m_bSubtreeBuilded; // is the subtree builded?
unsigned short m_uwSubtreeTraceIndex; // begining of the subtree trace raw info
unsigned short m_lNumberOfVariableValues;
tdstGetSetParam *m_a_tdstArrayOfVariableValues;
// END ROMTEAM Cristi Petrescu 98-06-
protected:
IAD_tdListOfNodes m_pro_clListOfChildNodes;
IAD_EditorTreeNode *m_pro_pclParentNode;
tdstNodeInterpret *m_p_stMotorNode;
CPA_Actor *m_pri_pclParentActor;
short m_pro_wDepth;
CString m_pro_csNodeType;
CString m_pro_csNodeName;
CString m_pro_csValue; //<--> ID
CString m_pro_csReturnValue; //For functions aso
CString m_pro_csNodeAdditionnalInfo;
CString m_pro_csCompleteString;
enum AIDebug_tdeSectionType_ m_pro_tdeNodeType;
HTREEITEM m_pro_hTreeItem;
private:
//Functions
public:
//Get/Set functions
////////////////////
IAD_tdListOfNodes *m_pub_fn_ptdGetListOfChildNodes();
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vSetListOfChildNodes (IAD_tdListOfNodes *);
//END ROMTEAM Cristi Petrescu 98-05-
IAD_EditorTreeNode *m_pub_fn_pclGetParentNode();
//BEGIN ROMTEAM Cristi Petrescu 98-05-
void m_fn_vSetParentNode (IAD_EditorTreeNode * _pclParentNode) {m_pro_pclParentNode = _pclParentNode;};
// only works after post processation
IAD_EditorTreeNode *m_fn_pclGetBehaviourParentNode (void);
void m_fn_vAddExecutedNodes (void);
//END ROMTEAM Cristi Petrescu 98-05-
// BEGIN ROMTEAM Cristi Petrescu 98-06-
IAD_EditorTreeNode *m_fn_pclGetEngineLoopParentNode (void);
// END ROMTEAM Cristi Petrescu 98-06-
tdstNodeInterpret *m_pub_fn_p_stGetMotorNode();
CPA_Actor *m_pub_fn_pclGetParentActor();
short m_pub_fn_wGetDepth();
enum AIDebug_tdeSectionType_ m_pub_fn_tdeGetNodeType();
HTREEITEM m_pub_fn_hGetTreeItem();
void m_pub_fn_vSetTreeItem(HTREEITEM _hTreeItem);
CString m_pub_fn_csGetNodeType();
CString m_pub_fn_csGetNodeName();
CString m_pub_fn_csGetNodeValue();
CString m_pub_fn_csGetNodeReturnValue();
CString m_pub_fn_csGetNodeAdditionnalInfo();
void m_pub_fn_vSetNodeAdditionnalInfo(CString _csNewNodeInfo);
CString m_pub_fn_csGetCompleteString();
//Tree construction
////////////////////
IAD_EditorTreeNode *m_pub_fn_pclAddChildNode( enum AIDebug_tdeSectionType_ _tdeNodeType,
tdstNodeInterpret *_p_stNode,
CPA_Actor *_pclParentActor,
CString _csNewElementType,
CString _csNewElementName,
CString _csNewElementValue,
CString _csNewElemenReturnValue,
CString _csNodeAdditionnalInfo);
// BEGIN ROMTEAM Cristi Petrescu 98-06-
tdstGetSetParam * m_fn_p_tdstGetVariableValue (long);
void m_fn_vAddVariableValue (tdstGetSetParam *);
// END ROMTEAM Cristi Petrescu 98-06-
protected:
private:
CString m_pri_fn_csComputeTotalName();
};
#endif //_IA_DEBUGGER_EDITOR_TREE_