1 // Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights 2 // reserved. Use of this source code is governed by a BSD-style license that 3 // can be found in the LICENSE file. 4 // 5 // --------------------------------------------------------------------------- 6 // 7 // This file was generated by the CEF translator tool. If making changes by 8 // hand only do so within the body of existing method and function 9 // implementations. See the translator.README.txt file in the tools directory 10 // for more information. 11 // 12 // $hash=2ad630d884be7968333098308a5bb25c608a037e$ 13 // 14 15 #ifndef CEF_LIBCEF_DLL_CTOCPP_MEDIA_OBSERVER_CTOCPP_H_ 16 #define CEF_LIBCEF_DLL_CTOCPP_MEDIA_OBSERVER_CTOCPP_H_ 17 #pragma once 18 19 #if !defined(BUILDING_CEF_SHARED) 20 #error This file can be included DLL-side only 21 #endif 22 23 #include <vector> 24 #include "include/capi/cef_media_router_capi.h" 25 #include "include/cef_media_router.h" 26 #include "libcef_dll/ctocpp/ctocpp_ref_counted.h" 27 28 // Wrap a C structure with a C++ class. 29 // This class may be instantiated and accessed DLL-side only. 30 class CefMediaObserverCToCpp 31 : public CefCToCppRefCounted<CefMediaObserverCToCpp, 32 CefMediaObserver, 33 cef_media_observer_t> { 34 public: 35 CefMediaObserverCToCpp(); 36 virtual ~CefMediaObserverCToCpp(); 37 38 // CefMediaObserver methods. 39 void OnSinks(const std::vector<CefRefPtr<CefMediaSink>>& sinks) override; 40 void OnRoutes(const std::vector<CefRefPtr<CefMediaRoute>>& routes) override; 41 void OnRouteStateChanged(CefRefPtr<CefMediaRoute> route, 42 ConnectionState state) override; 43 void OnRouteMessageReceived(CefRefPtr<CefMediaRoute> route, 44 const void* message, 45 size_t message_size) override; 46 }; 47 48 #endif // CEF_LIBCEF_DLL_CTOCPP_MEDIA_OBSERVER_CTOCPP_H_ 49