CEFInterfaceBrowserByteResource.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // Engine/Source/Runtime/WebBrowser/Private/CEF/CEFBrowserByteResource.h
  2. #pragma once
  3. #include "CoreMinimal.h"
  4. #if WITH_CEF3
  5. #include "CEFInterfaceLibCefIncludes.h"
  6. /**
  7. * Implements a resource handler that will return the contents of a string as the result.
  8. */
  9. class FCEFInterfaceBrowserByteResource
  10. : public CefResourceHandler
  11. {
  12. public:
  13. /**
  14. */
  15. FCEFInterfaceBrowserByteResource(const CefRefPtr<CefPostDataElement>& PostData, const FString& InMimeType);
  16. ~FCEFInterfaceBrowserByteResource();
  17. // CefResourceHandler interface
  18. virtual void Cancel() override;
  19. virtual void GetResponseHeaders(CefRefPtr<CefResponse> Response, int64& ResponseLength, CefString& RedirectUrl) override;
  20. virtual bool ProcessRequest(CefRefPtr<CefRequest> Request, CefRefPtr<CefCallback> Callback) override;
  21. virtual bool ReadResponse(void* DataOut, int BytesToRead, int& BytesRead, CefRefPtr<CefCallback> Callback) override;
  22. private:
  23. int32 Position;
  24. int32 Size;
  25. unsigned char* Buffer;
  26. FString MimeType;
  27. // Include the default reference counting implementation.
  28. IMPLEMENT_REFCOUNTING(FCEFInterfaceBrowserByteResource);
  29. };
  30. #endif