Ios 使对象随时可用以提高性能
我正在开发一个iPad音乐音序器,我用来播放声音的代码是 基本上,每次需要播放新样本时,CoreAudio都会从该示例中调用Ios 使对象随时可用以提高性能,ios,oop,user-interface,memory,object,Ios,Oop,User Interface,Memory,Object,我正在开发一个iPad音乐音序器,我用来播放声音的代码是 基本上,每次需要播放新样本时,CoreAudio都会从该示例中调用RenderTone方法 我的项目中有一个面向对象的模型,我想做的是:创建一个歌曲对象,将曲目添加到歌曲中。每个曲目都有多个条(度量),这些条由多个注释组成。根据当前的“播放”位置,将为必须在指定时间播放的每个音符生成正确的样本 所有这些对象都将基于应用程序GUI中的用户输入。但这是否意味着每次调用RenderTone方法时,我都必须阅读用户界面,并启动所有对象(从歌曲开始
RenderTone
方法
我的项目中有一个面向对象的模型,我想做的是:创建一个歌曲
对象,将曲目
添加到歌曲中。每个曲目
都有多个条
(度量),这些条由多个注释组成。根据当前的“播放”位置,将为必须在指定时间播放的每个音符生成正确的样本
所有这些对象都将基于应用程序GUI中的用户输入。但这是否意味着每次调用RenderTone
方法时,我都必须阅读用户界面,并启动所有对象(从歌曲开始,如上所述),以便计算帧
所以我想知道的是:如何使我的Song
对象始终可用,以便调用类似Song.getSamples(int numberOfSamples,int playPosition)的东西
何时调用RenderTone
方法
我希望这是清楚的,这是不容易解释,所以如果有什么我忘记提到,让我知道
所有这些对象都将基于应用程序GUI中的用户输入。但这是否意味着每次调用RenderTone方法时,我都必须阅读用户界面,并启动所有对象(从Song开始,如上所述),以便计算帧
否。GUI应该更新模型(Song
),并且RenderTone
方法也应该引用Song
。模型应与视图(GUI)类分开存储。它可以由一些中心对象(例如程序开始时的应用程序控制器)创建,并交给GUI和播放器。或者,您可以使用一个Singleton来保存Song
或所有Song
对象(例如可能具有currentSong
属性的SingletonSongManager
)