C++

赤外線アレイセンサ AMG8833 (Grid-EYE) をWebSocketで見てみる

赤外線アレイセンサ AMG8833、いわゆるGrid-EYEを使ってみました。 www.switch-science.com 上記の説明の通り、60度の四角錐の測定エリア(2次元)を8x8に分割した64個のピクセルについて、0〜80℃の温度が得られます。時間分解能は10fpsです。 これを、ESP8266…

C++11/14でrange based forで指定回数Loopする

C++

for (int i = 0; i < 10; i++) { ... } って何度も書くのがだるいので、range based forを使って楽にしたい。要するに、 for (auto i : 10_) { ... }で10回ループできるようにしたいね、という話。他の変数の回数分ループするなら int x = 3; for (auto i : …

hidden symbolの関数呼び出しをフックする

Linuxでは一般的なライブラリ関数の呼び出しはLD_PRELOADを使ってフックして、別の動作をさせる(オーバーライドする)ことができます。 (参考: LD_PRELOADでBrainf*ck - Okiraku Programming ) しかし、フックできる関数には条件があって、PLT(procedure…

可変引数テンプレートでfizzbuzz

C++

やっぱりBoost.MPLのstringを使う以外に手はなさそうだ…. C++0xなら…というわけで可変引数テンプレートでfizzbuzzしてみました。 「普通(?)に boost::mpl::string でいいじゃん」という気がしますが、15くらいまでしか無理らしいので。 mpl::stringの制限の…