Cocos2d-x3.3RC0 Cpp-test分析之NewAudioEngineDemo(转:http://blog.csdn.net/yuxikuo_1/article/details/41081453)
#ifndef __NewAudioEngineDemo__NewAudioEngineDemo__
#define __NewAudioEngineDemo__NewAudioEngineDemo__
#include "cocos2d.h"
#include "ui/CocosGUI.h"
#include "VisibleRect.h"
#include "audio/include/AudioEngine.h"
USING_NS_CC;
using namespace ui;
class NewAudioEngineDemo : public Scene
{
public:
CREATE_FUNC(NewAudioEngineDemo);
virtual bool init();
};
class BaseTest : public Layer
{
public:
CREATE_FUNC(BaseTest);
virtual bool init();
virtual std::string title() const;//主标题
virtual std::string subtitle() const;//副标题
virtual void onExit() override;
virtual void restartCallback(Ref* sender);//重新执行当前test
virtual void nextCallback(Ref* sender);//下一个test
virtual void backCallback(Ref* sender);//上一个test
void menuCloseCallback(cocos2d::Ref* pSender);//关闭菜单回调函数
};
class AudioControlTest : public BaseTest
{
public:
CREATE_FUNC(AudioControlTest);
virtual ~AudioControlTest();
virtual bool init();
virtual void update(float dt);
virtual std::string subtitle() const override;
private:
int _audioID;
bool _loopEnabled;
float _volume;
float _duration;
float _timeRatio;
void* _playItem;
void* _timeSlider;
bool _updateTimeSlider;
};
class PlaySimultaneouslyTest : public BaseTest
{
public:
CREATE_FUNC(PlaySimultaneouslyTest);
virtual ~PlaySimultaneouslyTest();
virtual bool init();
virtual std::string subtitle() const override;
private:
static const int TEST_COUNT = 10;
std::string _files[TEST_COUNT];
void* _playItem;
int _playingcount;
};
class AudioProfileTest : public BaseTest
{
public:
CREATE_FUNC(AudioProfileTest);
virtual bool init();
virtual ~AudioProfileTest();
virtual std::string subtitle() const override;
virtual void update(float dt);
private:
static const int FILE_COUNT = 2;
std::string _files[FILE_COUNT];
cocos2d::experimental::AudioProfile _audioProfile;
int _audioCount;
Label* _showLabel;
float _time;
float _minDelay;
void* _timeSlider;
};
class InvalidAudioFileTest : public BaseTest
{
public:
CREATE_FUNC(InvalidAudioFileTest);
virtual bool init();
virtual ~InvalidAudioFileTest();
virtual std::string subtitle() const override;
};
class LargeAudioFileTest : public BaseTest
{
public:
CREATE_FUNC(LargeAudioFileTest);
virtual bool init();
virtual ~LargeAudioFileTest();
virtual std::string subtitle() const override;
};
#endif /* defined(__NewAudioEngineDemo__NewAudioEngineDemo__) */
最新文章
- 跟着百度学PHP[4]OOP面对对象编程-9-封装性,访问控制[private、pubic、protected]
- 解决jQuery插件冲突
- ArcGIS API for Silverlight动态标绘的实现
- iOS prototype Cells
- KVM: 安装Windows virtio半虚拟化驱动
- poj 1095 Trees Made to Order 卡特兰数
- <;a>;作Form表单提<;/a>;
- Java线程(转)
- angularJS 判断
- 【Git】Git pull 强制覆盖本地文件
- Vue爬坑之路
- MySQL 排名、分组后组内排名、取各组的前几名 及排名后更新插入数据表中
- vue 自定义过滤器 格式化金额(保留两位小数)
- Orchard 之:Widget,兼看 Layer 在权限控制中的作用
- Unity Shader之使用Cubemap实现反射效果
- 前端 javascript 数据类型 数组 列表
- LeetCode (226):Invert Binary Tree 递归实现
- 重温CLR(十三) 定制特性
- windows安装多个版本的jdk,解决java-version和javac-version版本不一致的问题
- 数据库——MySQL——完整性约束