LocalFunction.cpp
上传用户:kittypts
上传日期:2018-02-11
资源大小:241k
文件大小:1k
源码类别:

PlugIns编程

开发平台:

Visual C++

  1. /*
  2. *
  3. *  This file is
  4. *    Copyright (C) 2006-2008 Nektra S.A.
  5. *  
  6. *  This program is free software; you can redistribute it and/or modify
  7. *  it under the terms of the GNU Lesser General Public License as published by
  8. *  the Free Software Foundation; either version 2, or (at your option)
  9. *  any later version.
  10. *  
  11. *  This program is distributed in the hope that it will be useful,
  12. *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. *  GNU General Public License for more details.
  15. *  
  16. */
  17. #include "LocalFunction.h"
  18. #include "Utils.h"
  19. ///
  20. /// Constructors / Destructors
  21. ///
  22. NktLocalFunction::NktLocalFunction() : _pThis(NULL) {}
  23. NktLocalFunction::NktLocalFunction(const NktFunctionWrapper& fw, LPCVOID pThis)
  24. : NktFunctionWrapper(fw), _pThis(pThis) {}
  25. NktLocalFunction::NktLocalFunction(const NktLocalFunction& lf)
  26. : NktFunctionWrapper(lf), _pThis(lf._pThis) {}
  27. NktLocalFunction& NktLocalFunction::operator=(const NktLocalFunction& cp)
  28. {
  29. NktFunctionWrapper::operator=(cp);
  30. _pThis = cp._pThis;
  31. return *this;
  32. }
  33. ///
  34. /// Call
  35. ///
  36. void NktLocalFunction::Call(NktRegisters* registers, LPCVOID params, USHORT pmsSize)
  37. {
  38. NktUtils::CallFunction(*this, registers, params, pmsSize);
  39. }
  40. void NktLocalFunction::Call(LPCVOID params, USHORT pmsSize)
  41. {
  42. NktUtils::SimpleCallFunction(*this, params, pmsSize, _pThis);
  43. }