summaryrefslogtreecommitdiffstats
path: root/ppapi/shared_impl/function_group_base.h
diff options
context:
space:
mode:
Diffstat (limited to 'ppapi/shared_impl/function_group_base.h')
-rw-r--r--ppapi/shared_impl/function_group_base.h53
1 files changed, 0 insertions, 53 deletions
diff --git a/ppapi/shared_impl/function_group_base.h b/ppapi/shared_impl/function_group_base.h
deleted file mode 100644
index ce42a38..0000000
--- a/ppapi/shared_impl/function_group_base.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// 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_SHARED_IMPL_FUNCTION_GROUP_BASE_H_
-#define PPAPI_SHARED_IMPL_FUNCTION_GROUP_BASE_H_
-
-#include <stddef.h> // For NULL.
-
-#include "ppapi/shared_impl/ppapi_shared_export.h"
-
-#define FOR_ALL_PPAPI_FUNCTION_APIS(F) \
- F(PPB_Instance_FunctionAPI) \
- F(ResourceCreationAPI)
-
-namespace ppapi {
-
-// Forward declare all the function APIs.
-namespace thunk {
-#define DECLARE_FUNCTION_CLASS(FUNCTIONS) class FUNCTIONS;
-FOR_ALL_PPAPI_FUNCTION_APIS(DECLARE_FUNCTION_CLASS)
-#undef DECLARE_FUNCTION_CLASS
-} // namespace thunk
-
-class PPAPI_SHARED_EXPORT FunctionGroupBase {
- public:
- virtual ~FunctionGroupBase();
-
- // Dynamic casting for this object. Returns the pointer to the given type if
- // Inheritance-based dynamic casting for this object. Returns the pointer to
- // the given type if it's supported. Derived classes override the functions
- // they support to return the interface.
- #define DEFINE_TYPE_GETTER(FUNCTIONS) \
- virtual thunk::FUNCTIONS* As##FUNCTIONS();
- FOR_ALL_PPAPI_FUNCTION_APIS(DEFINE_TYPE_GETTER)
- #undef DEFINE_TYPE_GETTER
-
- // Template-based dynamic casting. See specializations below.
- template <typename T> T* GetAs() { return NULL; }
-};
-
-// Template-based dynamic casting. These specializations forward to the
-// AsXXX virtual functions to return whether the given type is supported.
-#define DEFINE_FUNCTION_CAST(FUNCTIONS) \
- template<> inline thunk::FUNCTIONS* FunctionGroupBase::GetAs() { \
- return As##FUNCTIONS(); \
- }
-FOR_ALL_PPAPI_FUNCTION_APIS(DEFINE_FUNCTION_CAST)
-#undef DEFINE_FUNCTION_CAST
-
-} // namespace ppapi
-
-#endif // PPAPI_SHARED_IMPL_FUNCTION_GROUP_BASE_H_