Skip to content

Instantly share code, notes, and snippets.

View nariakiiwatani's full-sized avatar

nariakiiwatani nariakiiwatani

View GitHub Profile
@nariakiiwatani
nariakiiwatani / Lazy.h
Created December 7, 2012 09:33
Lazy Variable Template
#pragma once
/*!
* @brief template class for inertial variable
* @note class T must implement operator=(T), operator+(T), and operator/(float).
*
* @usage
* Lazy<float> value(SIZE);
* value = 0;
* cout << value << endl; // 0
@nariakiiwatani
nariakiiwatani / Osc.cpp
Created January 23, 2013 10:54
OpenSoundControl send/receive utility
#include "Osc.h"
#include "ofxOscSender.h"
#include "ofxOscReceiver.h"
namespace osc {
ofxOscSender sender_;
ofxOscReceiver receiver_;
map<string, ofEvent<ofxOscMessage>> events_;
}
void osc::setupSender(const string& hostname, int port)
@nariakiiwatani
nariakiiwatani / kill_slashend.php
Created March 22, 2013 10:23
<hoge/>を<hoge></hoge>に、 <hoge fuga="piyo"/>を<hoge fuga="piyo"></hoge>に置換する。 PHPのDOMDocument::saveXmlが空ノードをこう吐きだすのが嫌で。
preg_replace("/<([^ >]*)([^\>]*)\/>\n?/", "<\\1\\2></\\1>\n", $dom->saveXml());
@nariakiiwatani
nariakiiwatani / RingBuffer.h
Created September 9, 2014 11:16
RingBuffer
#pragma once
template <bool B, size_t T, size_t F>
struct binarywrap_t { static const size_t size = T; };
template <size_t T, size_t F>
struct binarywrap_t<false, T, F> { static const size_t size = F; };
template <size_t n, size_t m = 1>
struct binarywrap {
@nariakiiwatani
nariakiiwatani / OscIn
Last active February 10, 2016 18:18
Extending ofxOscReceiver(singleton, auto update, event listener or value reference style)
#pragma once
#include "ofxOscReceiver.h"
class OscIn : public ofxOscReceiver
{
private:
struct Value {
enum {
INT,FLOAT,STRING,
@nariakiiwatani
nariakiiwatani / Dialog.cpp
Created November 11, 2014 14:07
Combobox dialog for Cocoa
#include "Dialog.h"
#include <Cocoa/Cocoa.h>
std::string systemComboBoxSelector(const std::string &question, const std::vector<std::string> &list)
{
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
[alert addButtonWithTitle:@"OK"];
// [alert addButtonWithTitle:@"Cancel"];
[alert setMessageText:[NSString stringWithCString:question.c_str()
encoding:NSUTF8StringEncoding]];
#pragma once
#include "ofUtils.h"
class SimpleFrequencyDetector : public vector<float>
{
public:
SimpleFrequencyDetector():buffer_size_(0) {
timestamp_ = ofGetElapsedTimef();
}
#pragma once
#include "ofEventUtils.h"
#include "ofEvents.h"
#include "ofAppRunner.h"
template<typename T>
class Animation
{
public:
@nariakiiwatani
nariakiiwatani / renameLayer.jsx
Last active August 29, 2015 14:27 — forked from sacrifs/renameLayer.jsx
レイヤー名置換 JSX
/**
* レイヤー名置換 JSX
*/
var _layers = [];
function main(dialog){
var document = activeDocument;
var layers = document.layers;
getLayer(layers);
#pragma once
class TapTempo
{
public:
void tap() {
float time = ofGetSystemTime();
interval_ = mark_-time;
mark_ = time;
}