diff options
Diffstat (limited to 'chromium/ppapi/examples/compositor/spinning_cube.h')
-rw-r--r-- | chromium/ppapi/examples/compositor/spinning_cube.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/chromium/ppapi/examples/compositor/spinning_cube.h b/chromium/ppapi/examples/compositor/spinning_cube.h new file mode 100644 index 00000000000..84a302c2dec --- /dev/null +++ b/chromium/ppapi/examples/compositor/spinning_cube.h @@ -0,0 +1,42 @@ +// Copyright 2014 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_EXAMPLES_GLES2_SPINNING_CUBE_SPINNING_CUBE_H_ +#define PPAPI_EXAMPLES_GLES2_SPINNING_CUBE_SPINNING_CUBE_H_ + +#include "ppapi/c/pp_stdint.h" + +class SpinningCube { + public: + SpinningCube(); + ~SpinningCube(); + + void Init(uint32_t width, uint32_t height); + void set_direction(int direction) { direction_ = direction; } + void SetFlingMultiplier(float drag_distance, float drag_time); + void UpdateForTimeDelta(float delta_time); + void UpdateForDragDistance(float distance); + void Draw(); + + void OnGLContextLost(); + + private: + class GLState; + + // Disallow copy and assign. + SpinningCube(const SpinningCube& other); + SpinningCube& operator=(const SpinningCube& other); + + void Update(); + + bool initialized_; + uint32_t width_; + uint32_t height_; + // Owned ptr. + GLState* state_; + float fling_multiplier_; + int direction_; +}; + +#endif // PPAPI_EXAMPLES_GLES2_SPINNING_CUBE_SPINNING_CUBE_H_ |