// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef PPAPI_HOST_MESSAGE_FILTER_HOST_H_ #define PPAPI_HOST_MESSAGE_FILTER_HOST_H_ #include "base/compiler_specific.h" #include "base/macros.h" #include "base/memory/ref_counted.h" #include "ppapi/host/ppapi_host_export.h" #include "ppapi/host/resource_host.h" namespace ppapi { namespace host { class PpapiHost; class ResourceMessageFilter; // This class is a generic ResourceHost that is composed of a single // ResourceMessageFilter. There are cases where ResourceHosts only serve the // purpose of passing messages onto a message filter to be handled on another // thread. This class can be used as the host in those cases. class PPAPI_HOST_EXPORT MessageFilterHost : public ResourceHost { public: MessageFilterHost(PpapiHost* host, PP_Instance instance, PP_Resource resource, const scoped_refptr& message_filter); virtual ~MessageFilterHost(); private: DISALLOW_COPY_AND_ASSIGN(MessageFilterHost); }; } // namespace host } // namespace ppapi #endif // PPAPI_HOST_MESSAGE_FILTER_HOST_H_