2011-01-01から1年間の記事一覧

エンディアン変換プログラム

ネットワークプログラムを組む際に,Big Endian (Network Byte Order) Little Endian (x86) のエンディアン変換プログラムを書いてみた.(ほとんど参考サイトの写経ともいう.) /** @file endian_utility.hpp * @brief Header file for utility fanctions …

singed char と unsigned char の違いに関するメモ

バイナリデータをごりごり直接操作する場合,1byte(8bit)型としてchar型を使用することがある.このとき,符号(signed / unsigned) を意識しないと思わぬ罠にはまるという話の経験談. 結論 1byte型は"unsigned" char型を意識して使うほうがよい. ポイント …

Hex dump (16進数表示) のプログラム (Boost.Format 使用)

16進数ダンプの関数を書いてみた.(Debugger使うのはおいといて・・・.)せっかくなので,Boost.Formatを使ってみる. /** @file hex_dump.hpp * @brief Header file for fanction to display variable in hex. */ #ifndef HEX_DUMP_HPP__INCLUDED #define…

Windows の I/O port 制御のメモ

Windows(NT系)ではユーザーモードからI/O portの制御ができないようだ.(カーネルモードからドライバを使えということらしい.)ユーザーモードからI/O制御するためのDLL類を色々な人が提供している.定番がよくわからないが,とりあえずメモ: WinIo, http…

Boost.Asio の Timer精度調査 (Windows環境)

要旨 目的: Boost.Asio には Timerクラスである deadline_timerがある.この時間精度について調べてみる. 調査環境: Boost 1.44.0, Windows XP (x64) 結論: date_timeライブラリに依存している.調査環境におけるdate_timeライブラリの時間取得関数はGet…

SetThreadPriority と SetThreadPriority のメモ

Windowsでプロセスやスレッドの優先度を指定する方法のメモ.※OSのバージョン等によって,設定値や動作が違う場合がある模様なので注意. 優先度の基本的な考え方 0(もっとも低い)〜31(もっとも高い)であらわされる優先度によって,スレッドの実行をスケジ…

SetThreadAffinityMask関数のメモ

http://msdn.microsoft.com/ja-jp/library/cc429346.aspx におけるSetThreadAffinityMask 関数の説明によれば, DWORD SetThreadAffinityMask ( HANDLE hThread, // 操作対象スレッドのハンドル DWORD dwThreadAffinityMask // スレッドアフィニティマスク )…

Spyder の Color Scheme カスタマイズ

Windowsでのpython用IDEとして,32bit環境ではPyScripterを愛用しているが,残念ながら64bitのPythonでは使用できない.64bitのpythonに対応したIDEとして,matplotlibなどと親和性の高いSpyderを導入した. Spyder入手 ビルドが面倒なため,ここでは,unoff…

PyQt4を使ってQt GUI上にmatplotlibのグラフを表示する参考資料

matplotlib(pythonのplotting library)はPyQtに対応している(現状PySideは対応していない模様).次のリンクが参考になりそうだ. SciPy Cookbook — SciPy Cookbook documentation Scipy公式.詳しい. http://matplotlib.sourceforge.net/examples/anima…

PyQt4のセットアップ (Windows XP x64 環境)

PyQt4 (GUIライブラリQtのPython bindings) のセットアップをWindows x64環境で行った作業記録. 0. 作業した環境 Microsoft Windows XP Professional x64 Edition Visual Studio 2008 Professional Edition Python 2.6 (x64) Qt libraries 4.7.2 インストー…

PySideのセットアップ (Windows XP x64 環境) の補足

PySideのセットアップ (Windows XP x64 環境) - e405の日記 の補足. PySideのCMakeビルド バッチファイル PySide for Windows 64bit - devlog で配布されているバッチファイルに次の変更を加え使用した: pyside-tools のビルドを追加 build-config.bat へ…

PySideのセットアップ (Windows XP x64 環境)

PySide (GUIライブラリQtのPython bindings) のセットアップをWindows x64環境で行った作業記録. 0. 作業した環境 Microsoft Windows XP Professional x64 Edition Visual Studio 2008 Professional Edition Python 2.6 (x64) cmake version 2.8.2 1. Qtの…