You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
1.9 KiB
84 lines
1.9 KiB
#include "ofApp.h"
|
|
|
|
void ofApp::setup(){
|
|
ofBackground(0);
|
|
mapper.setup();
|
|
TCPServer::instance()->setup(9999);
|
|
|
|
#ifdef TARGET_RASPBERRY_PI
|
|
ofSetFullscreen(true);
|
|
#endif
|
|
}
|
|
|
|
void ofApp::update(){
|
|
mapper.update();
|
|
TCPServer::instance()->update();
|
|
}
|
|
|
|
void ofApp::draw(){
|
|
mapper.draw();
|
|
TCPServer::instance()->draw();
|
|
}
|
|
|
|
// Here is where we process messages received from TCPServer instance
|
|
void ofApp::gotMessage(ofMessage m){
|
|
std::cout << m.message << std::endl;
|
|
|
|
ofxJSONElement json;
|
|
bool ok = json.parse(m.message);
|
|
if(ok){
|
|
if(json["event"].asString() == "connected"){
|
|
// Save Mapper composition and get config as string
|
|
std::cout << "Sending mapper config" << std::endl;
|
|
mapper.saveProject();
|
|
|
|
ofFile file;
|
|
file.open(ofToDataPath("ofxpimapper.xml"), ofFile::ReadOnly, false);
|
|
ofBuffer buff = file.readToBuffer();
|
|
string text = buff.getText();
|
|
|
|
TCPServer::instance()->send(json["id"].asInt(), text);
|
|
}
|
|
|
|
if(json["event"].asString() == "keyPressed"){
|
|
mapper.keyPressed(json["key"].asInt());
|
|
}
|
|
|
|
if(json["event"].asString() == "keyReleased"){
|
|
mapper.keyReleased(json["key"].asInt());
|
|
}
|
|
|
|
if(json["event"].asString() == "mousePressed"){
|
|
mapper.mousePressed(json["x"].asInt(), json["y"].asInt(), json["button"].asInt());
|
|
}
|
|
|
|
if(json["event"].asString() == "mouseReleased"){
|
|
mapper.mouseReleased(json["x"].asInt(), json["y"].asInt(), json["button"].asInt());
|
|
}
|
|
|
|
if(json["event"].asString() == "mouseDragged"){
|
|
mapper.mouseDragged(json["x"].asInt(), json["y"].asInt(), json["button"].asInt());
|
|
}
|
|
}
|
|
}
|
|
|
|
void ofApp::keyPressed(int key){
|
|
mapper.keyPressed(key);
|
|
}
|
|
|
|
void ofApp::keyReleased(int key){
|
|
mapper.keyReleased(key);
|
|
}
|
|
|
|
void ofApp::mousePressed(int x, int y, int button){
|
|
mapper.mousePressed(x, y, button);
|
|
}
|
|
|
|
void ofApp::mouseReleased(int x, int y, int button){
|
|
mapper.mouseReleased(x, y, button);
|
|
}
|
|
|
|
void ofApp::mouseDragged(int x, int y, int button){
|
|
mapper.mouseDragged(x, y, button);
|
|
}
|
|
|
|
|