2005-11-16

PyVISA

久しぶりにコードを読むことにします。ctypes を使ったラッパー API に興味があるので、PyVISA を標的にします。飽きたら辞めます。



VISA というのは、Virtual Instrument Software Architecture の略で、シリアル、USB、GPIB などを抽象化した、仮想インターフェースの API です。NI-VISA という DLL 実装があって、これの Python 用 API を提供しているのが PyVISA です。



DLL を呼び出す、低レベルモジュールが vpp43.py です。



# Windows NT の場合には、WINFUNCTYPE を FUNCTYPE という名前でインポート
# それ以外の場合には、CFUNCTYPE を FUNCTYPE という名前でインポート
# プラットフォームごとに異なるオブジェクトに、共通の名前を割り当て、
# プラットフォームの違いを吸収する。
if os.name == 'nt':
from ctypes import windll, WINFUNCTYPE as FUNCTYPE
else:
from ctypes import CFUNCTYPE as FUNCTYPE


初日から、たった1文ですが、無理せず続けることが重要ってことで。