IECLicense.i 906 B

123456789101112131415161718192021222324252627
  1. %apply (unsigned char *, unsigned int) {(unsigned char *lpData, unsigned int ulSize)}
  2. %include <typemaps/cstrings.swg>
  3. %typemaps_cstring(%bstring,
  4. unsigned char,
  5. SWIG_AsCharPtr,
  6. SWIG_AsCharPtrAndSize,
  7. SWIG_FromCharPtr,
  8. SWIG_FromBytePtrAndSize);
  9. %bstring_output_allocate_size(unsigned char **lpAuthResponse, unsigned int *lpulResponseSize, delete[] *$1)
  10. class IECLicense : public IUnknown {
  11. public:
  12. virtual HRESULT LicenseAuth(unsigned char *lpData, unsigned int ulSize, unsigned char **lpAuthResponse, unsigned int *lpulResponseSize) = 0;
  13. /**
  14. * The following two methods are displayed for completeness.
  15. *
  16. * virtual HRESULT LicenseCapa(unsigned int ulServiceType, char ***lppszCapabilities, unsigned int *lpulCapabilities) = 0;
  17. * virtual HRESULT LicenseUsers(unsigned int ulServiceType, unsigned int *ulUsers) = 0;
  18. */
  19. %extend {
  20. ~IECLicense() { self->Release(); }
  21. }
  22. };