Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
cRegScript.h
Go to the documentation of this file.
1 //
5 //
6 
7 #ifndef _INC_cRegScript_H
8 #define _INC_cRegScript_H
9 #ifndef NO_PRAGMA_ONCE
10 #pragma once
11 #endif
12 
13 #include "cRegVar.h"
14 
15 #if defined(_WIN32)
16 #include "../Scriptable/IScriptableObj.h"
17 
18 namespace GrayLib
19 {
20 #ifdef USE_ISCRIPTABLE
21  class GRAYLIB_LINK cRegScript
22  : public cRegVar
23  , public IScriptableGetter
24  , public IScriptableEnumerator
25  , public IScriptableSetter
26  {
30  typedef cRegVar SUPER_t;
31  public:
32  IScriptableGetter* m_pExpSource;
33 
34  public:
35  cRegScript(cRegKeyX& reg, IScriptableGetter* pExpSource = nullptr)
36  : cRegVar(reg)
37  , m_pExpSource(pExpSource)
38  {
39  }
40 
41  HRESULT WriteValueExp(const ATOMCHAR_t* pszKey, const char* pszValue);
42 
43  STDMETHOD(s_GetEnum)(ITERATE_t i, OUT cStringA& rsPropName, OUT cVariant& rvValRet);
44  STDMETHOD(s_GetByName)(const ATOMCHAR_t* pszPropName, OUT cVariant& vValRet);
45  STDMETHOD(s_Put)(const ATOMCHAR_t* pszPropName, const cVariant& vValSet);
46  };
47 #endif
48 
49 };
50 #endif // _WIN32
51 #endif // _INC_cRegScript_H
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: IScriptableObj.h:38
Definition: IScriptableObj.h:51
Definition: IScriptableObj.h:62
Definition: cMesh.h:22
class __DECL_IMPORT cVariant
Definition: cJSONWriter.h:19
int ITERATE_t
like size_t but signed
Definition: Index.h:28
cStringT< char > cStringA
Definition: cString.h:635
char ATOMCHAR_t
the char form (UNICODE or not) for an atom. (for symbolic names)
Definition: StrConst.h:15