8 #ifndef META_OCEAN_PLATFORM_ANDROID_APPLICATION_GL_VIEW_H
9 #define META_OCEAN_PLATFORM_ANDROID_APPLICATION_GL_VIEW_H
34 class OCEAN_PLATFORM_ANDROID_APPLICATION_EXPORT
GLView
41 typedef GLView* (*InstanceFunction)();
59 inline void setInstanceFunction(
const InstanceFunction& instanceFunction,
const bool isBaseClass);
114 virtual bool resize(
const int width,
const int height);
190 template <
typename T>
199 static inline bool registerInstanceFunction(
const InstanceFunction& instanceFunction,
const bool isBaseClass =
false);
205 static inline GLView* createInstance();
222 baseInstanceFunction_(nullptr),
223 derivedInstanceFunction_(nullptr)
232 baseInstanceFunction_ = instanceFunction;
236 derivedInstanceFunction_ = instanceFunction;
240 template <
typename T>
243 ocean_assert(
dynamic_cast<T*
>(&
Instance::get().instance()) !=
nullptr);
This class implements a recursive lock object.
Definition: Lock.h:31
This template class is the base class for all singleton objects.
Definition: Singleton.h:71
static Instance & get()
Returns a reference to the unique object.
Definition: Singleton.h:115
float Scalar
Definition of a scalar type.
Definition: Math.h:128
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15