// Copyright (c) 2011 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_CPP_GRAPHICS_3D_CLIENT_H_ #define PPAPI_CPP_GRAPHICS_3D_CLIENT_H_ #include "ppapi/c/pp_stdint.h" #include "ppapi/cpp/instance_handle.h" /// @file /// This file defines the API for callbacks related to 3D. namespace pp { class Instance; // This class provides a C++ interface for callbacks related to 3D. You // would normally use multiple inheritance to derive from this class in your // instance. class Graphics3DClient { public: /// /// A constructor for creating a Graphics3DClient. /// /// @param[in] instance The instance that will own the new /// Graphics3DClient. explicit Graphics3DClient(Instance* instance); /// Destructor. virtual ~Graphics3DClient(); /// Graphics3DContextLost() is a notification that the context was lost for /// the 3D devices. virtual void Graphics3DContextLost() = 0; private: InstanceHandle associated_instance_; }; } // namespace pp #endif // PPAPI_CPP_GRAPHICS_3D_CLIENT_H_