5 #ifndef _INC_cOleFlashCall_H
6 #define _INC_cOleFlashCall_H
10 #include "../WinAPI/WinTypes.h"
18 #if defined(_WIN32) && defined(_MSC_VER) && defined(USE_FLASH)
36 static const cOleFlashArg k_Null;
43 cOleFlashArg() noexcept
47 cOleFlashArg(ARG_TYPE eType,
cString sArg =
"")
52 cOleFlashArg(
const char* sVal)
62 cOleFlashArg(
bool bVal)
63 : m_eType(ARG_BOOLEAN)
64 , m_sArg(bVal ?
"true" :
"false")
67 cOleFlashArg(
int iVal)
70 m_sArg = StrArg<GChar_t>(iVal);
72 cOleFlashArg(
unsigned int uVal)
75 m_sArg = StrArg<GChar_t>(uVal);
77 cOleFlashArg(
unsigned long ulVal)
80 m_sArg = StrArg<GChar_t>((UINT64)ulVal);
82 cOleFlashArg(
float fVal)
87 m_sArg = (
const char*)(szBuffer);
90 void put_ArgType(ARG_TYPE eType)
94 ARG_TYPE get_ArgType()
const
98 const char* get_ArgTypeName()
const;
100 const cString& get_String()
const
105 int get_Number()
const;
106 float get_Float()
const;
107 bool get_Boolean()
const;
109 void AppendString(
const cString& sArg2)
121 friend class cOleFlashParser;
125 cArrayStruct<cOleFlashArg> m_aArgs;
130 cOleFlashCall(
const char* xmlStream);
131 cOleFlashCall(
const char* pszFunctionName,
const char* pszArgs);
133 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1)
134 : m_sName(pszFunctionName)
138 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2)
139 : m_sName(pszFunctionName)
141 AddArg(arg1); AddArg(arg2);
143 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3)
144 : m_sName(pszFunctionName)
146 AddArg(arg1); AddArg(arg2); AddArg(arg3);
148 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3, cOleFlashArg& arg4)
149 : m_sName(pszFunctionName)
151 AddArg(arg1); AddArg(arg2); AddArg(arg3); AddArg(arg4);
153 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3, cOleFlashArg& arg4, cOleFlashArg& arg5)
154 : m_sName(pszFunctionName)
156 AddArg(arg1); AddArg(arg2); AddArg(arg3); AddArg(arg4); AddArg(arg5);
158 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3, cOleFlashArg& arg4, cOleFlashArg& arg5, cOleFlashArg& arg6)
159 : m_sName(pszFunctionName)
161 AddArg(arg1); AddArg(arg2); AddArg(arg3); AddArg(arg4); AddArg(arg5); AddArg(arg6);
163 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3, cOleFlashArg& arg4, cOleFlashArg& arg5, cOleFlashArg& arg6, cOleFlashArg& arg7, cOleFlashArg& arg8)
164 : m_sName(pszFunctionName)
166 AddArg(arg1); AddArg(arg2); AddArg(arg3); AddArg(arg4); AddArg(arg5); AddArg(arg6); AddArg(arg7); AddArg(arg8);
168 cOleFlashCall(
const char* pszFunctionName, cOleFlashArg& arg1, cOleFlashArg& arg2, cOleFlashArg& arg3, cOleFlashArg& arg4, cOleFlashArg& arg5, cOleFlashArg& arg6, cOleFlashArg& arg7, cOleFlashArg& arg8, cOleFlashArg& arg9)
169 : m_sName(pszFunctionName)
171 AddArg(arg1); AddArg(arg2); AddArg(arg3); AddArg(arg4); AddArg(arg5); AddArg(arg6); AddArg(arg7); AddArg(arg8); AddArg(arg9);
176 const cString& get_FuncName()
const
182 return m_aArgs.GetSize() != 0;
186 return m_aArgs.GetSize();
188 const cOleFlashArg& GetArg(
ITERATE_t i)
const
190 if (!m_aArgs.IsValidIndex(i))
191 return cOleFlashArg::k_Null;
194 void AddArg(cOleFlashArg& arg)
199 bool hasReturnType()
const
201 return !m_sReturnType.IsEmpty();
203 void put_ReturnTypeXML();
211 return ref_ReturnVal2();
213 const cString get_ReturnVal()
const
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
#define _countof(a)
Definition: cKernel.h:35
int ITERATE_t
like size_t but signed
Definition: Index.h:28
cStringT< GChar_t > cString
Definition: cString.h:636
static __DECL_IMPORT StrLen_t __stdcall DtoA(double nVal, OUT TYPE *pszOut, StrLen_t iStrMax, int iDecPlaces=-1, char chE=- 'e')