string ofxExecute(string cmd) { string result; char line[130]; FILE *fp = popen(cmd.c_str(), "r"); while (fgets( line, sizeof line, fp)) result += line; pclose(fp); return ofxTrimString(result); }
string ofxUrlToSafeLocalPath(string url) { string filename = url; filename = ofToLower(filename); filename = ofxTrimString(filename); filename = ofxReplaceString(filename, "http://", ""); filename = ofxReplaceString(filename, "/", "-"); filename = ofxReplaceString(filename, " ", "_"); filename = ofxReplaceString(filename, ":", "."); //filename = "images/"+filename; return filename; }
string ofxGetSerialString(ofSerial &serial, char until) { static string str; stringstream ss; char ch; int ttl=1000; while ((ch=serial.readByte())>0 && ttl-->0 && ch!=until) { ss << ch; } str+=ss.str(); if (ch==until) { string tmp=str; str=""; return ofxTrimString(tmp); } else { return ""; } }
//-------------------------------------------------------------- void ofApp::update(){ if(server.isConnected() && server.getNumClients() > 0) { string response = ofxTrimString(server.receive(0)); if(response.length() > 0) { cout << "Receive: " << response << endl; unsigned char* chars = (unsigned char*) response.c_str(); // cast from string to unsigned char* int length = response.length(); serial.writeBytes(chars,length); money += (ofToFloat(response)*0.25); } } if(displayMoney < money) { displayMoney += 0.01; } }