summaryrefslogtreecommitdiff
path: root/04_playobjects/src/testApp.h
diff options
context:
space:
mode:
Diffstat (limited to '04_playobjects/src/testApp.h')
-rw-r--r--04_playobjects/src/testApp.h26
1 files changed, 18 insertions, 8 deletions
diff --git a/04_playobjects/src/testApp.h b/04_playobjects/src/testApp.h
index b541207..a89c2f1 100644
--- a/04_playobjects/src/testApp.h
+++ b/04_playobjects/src/testApp.h
@@ -16,19 +16,15 @@ struct record{
class syncOniPlayer{
public:
~syncOniPlayer(){
- for (int i=0;i<players.size();i++) {
- players[i]->stop();
- delete players[i];
- }
+ stop();
}
void addPlayer(string name){
//ofxOpenNI *o=new ofxOpenNI;
//o->setupFromONI(name,true);
//o->setPaused(true);
//players.push_back(o);
- players.push_back(new ofxOpenNI);
- players[players.size()-1]->setupFromONI(name,true);
- players[players.size()-1]->setPaused(true);
+ players.push_back(NULL);
+ filenames.push_back(name);
//players[players.size()-1]->setSpeed(0.0f);
//players[players.size()-1]->setup(true);
//players[players.size()-1]->start();
@@ -36,7 +32,10 @@ class syncOniPlayer{
}
void play(){
for (int i=0;i<players.size();i++) {
- players[i]->setPaused(false);
+ players[i]=new ofxOpenNI();
+ players[i]->setSafeThreading(true);
+ players[i]->setupFromONI(filenames[i],true);
+ players[i]->start();
//players[players.size()-1]->setSpeed(1.0f);
}
}
@@ -58,9 +57,20 @@ class syncOniPlayer{
players[i]->drawImage(600, 0,520,390);
}
}
+ void stop(){
+ for (int i=0;i<players.size();i++) {
+ if (players[i]!=NULL) {
+ players[i]->stop();
+ delete players[i];
+ players[i]=NULL;
+ }
+ }
+ }
string audio;
+
private:
vector<ofxOpenNI*> players;
+ vector<string> filenames;
};