3#include "DefinitionGUISNAP.h"
9 class CInternalSNAPCodeGenerator;
10 class CSNAPSequenceManager;
11 class CGUIViewSNAPObjectNode;
13 class FL_EXPORT CSNAPCodeGenerator :
public Base::CFLBase
16 CSNAPCodeGenerator(CSNAPSequenceManager* pSequenceManager);
17 virtual ~CSNAPCodeGenerator();
19 const CResult GenerateCode();
21 Base::CFLString<wchar_t> GenerateAvailableVariableName(Base::CFLString<wchar_t> flsVariableName);
23 DeclareGetClassType();
26 const CResult GenerateVariableName(CGUIViewSNAPObjectNode* pNode, Base::CFLString<wchar_t>& flsVariableName, Base::CFLString<wchar_t>& flsVariableNameWithoutPrefix);
28 bool IsNumber(
wchar_t wcChar);
30 bool IsVariableNameAvailableCharacter(
wchar_t wcChar,
bool bFirst);
31 Base::CFLString<wchar_t> ConvertAvailableVariableName(Base::CFLString<wchar_t> flsVariableName,
bool bFirstUpper);
33 std::vector<SIOCodeInfo> GetInputIOCodes(CGUIViewSNAPObjectNode* pNode);
34 std::vector<SIOCodeInfo> GetOutputIOCodes(CGUIViewSNAPObjectNode* pNode);
36 Base::CFLString<wchar_t> ConvertTypeValueCode(Base::CFLString<wchar_t>& flsOutputType, Base::CFLString<wchar_t>& flsInputType, Base::CFLString<wchar_t>& flsCode);
39 CInternalSNAPCodeGenerator* m_pInternal;