From f1f12fc0cfd1b5e10d3b91eef548a026bf0ba38c Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期三, 26 六月 2024 09:50:55 +0800 Subject: [PATCH] update element ptr --- jrj/xframe/wobject/xaserverarg.hpp | 82 ++++++++--------------------------------- 1 files changed, 16 insertions(+), 66 deletions(-) diff --git a/jrj/xframe/wobject/xaserverarg.hpp b/jrj/xframe/wobject/xaserverarg.hpp index 9445853..5eb0ce1 100644 --- a/jrj/xframe/wobject/xaserverarg.hpp +++ b/jrj/xframe/wobject/xaserverarg.hpp @@ -112,6 +112,17 @@ return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->GetParam(pArgName); } + template<class T> + int SetParam(LPCTSTR pArgName, T pValue) + { + return ((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->SetParam(pArgName, (LPARAM)pValue); + } + + template<class T> + T GetParam(LPCTSTR pArgName) + { + return (T)((Hxsoft::XFrame::IXAServerArg*)getNativePointer())->GetParam(pArgName); + } }; class xaserverargPtr @@ -120,74 +131,13 @@ xaserverarg* arg; public: xaserverargPtr() :arg(new xaserverarg) {} + xaserverargPtr(LPARAM* val) :arg((xaserverarg*)val) {} + xaserverargPtr(xaserverarg* val) :arg(val) {} + //xaserverargPtr(xaserverarg val) :arg(new xaserverarg(val)){} +public: + xaserverarg* value() { return arg; } public: operator xaserverarg& () { return *arg; } operator xaserverarg* () { return arg; } xaserverarg* operator ->() { return arg; } -public: - int AddArg(string argname, string val, string typ = NULL) //alias "?AddArg@IXAServerArg@XFrame@Hxsoft@@QAEHPB_W00@Z"; - { - return arg->AddArg(argname, val, typ); - } - - int ClearArgs() //alias "?ClearArgs@IXAServerArg@XFrame@Hxsoft@@QAEHXZ" from "xframe.dll"; - { - return arg->ClearArgs(); - } - - int RemoveArg(string argname) //alias "?RemoveArg@IXAServerArg@XFrame@Hxsoft@@QAEHPB_W@Z"; - { - return arg->RemoveArg(argname); - } - /*int SetArg(string argname,double val,string typ=NULL) //alias "?SetArg@IXAServerArg@XFrame@Hxsoft@@QAEHPB_WNO@Z"; - { - return arg->SetArg(argname,val,typ); - } - int SetArg(string argname,int val,string typ=NULL) //alias "?SetArg@IXAServerArg@XFrame@Hxsoft@@QAEHPB_WHO@Z"; - { - return arg->SetArg(argname,val,typ); - }*/ - int SetArg(string argname, string val, string typ = NULL) //alias "?SetArg@IXAServerArg@XFrame@Hxsoft@@QAEHPB_W00@Z"; - { - return arg->SetArg(argname, val, typ); - } - string GetString() //alias "?GetString@IXAServerArg@XFrame@Hxsoft@@QAEPB_WXZ" from "xframe.dll"; - { - return arg->GetString(); - } - static void* CreateInstance() //alias "?CreateInstance@IXAServerArg@XFrame@Hxsoft@@SAPAV123@XZ"; - { - return Hxsoft::XFrame::IXAServerArg::CreateInstance(); - } - static int ReleaseInstance(void* p) //alias "?ReleaseInstance@IXAServerArg@XFrame@Hxsoft@@SAHPAV123@@Z"; - { - Hxsoft::XFrame::IXAServerArg::ReleaseInstance((Hxsoft::XFrame::IXAServerArg*)p); - return 1; - } - bool GetArgBool(string argname) //alias "?GetArgBool@IXAServerArg@XFrame@Hxsoft@@QAE_NPA_W@Z"; - { - return arg->GetArgBool((LPTSTR)argname); - } - double GetArgDouble(string argname) //alias "?GetArgDouble@IXAServerArg@XFrame@Hxsoft@@QAENPA_W@Z"; - { - return arg->GetArgDouble((LPTSTR)argname); - } - int GetArgInt(string argname) //alias "?GetArgInt@IXAServerArg@XFrame@Hxsoft@@QAEHPA_W@Z"; - { - return arg->GetArgInt((LPTSTR)argname); - } - string GetArgString(string argname) //alias "?GetArgString@IXAServerArg@XFrame@Hxsoft@@QAEPA_WPA_W@Z"; - { - return arg->GetArgString((LPTSTR)argname); - } - - int SetParam(LPCTSTR pArgName, LPARAM pValue) - { - return arg->SetParam(pArgName, pValue); - } - - LPARAM GetParam(LPCTSTR pArgName) - { - return arg->GetParam(pArgName); - } }; \ No newline at end of file -- Gitblit v1.9.3