編集:元の質問を読み直したところ、言葉遣いが非常に悪く、あいまいで、混乱しすぎてまともな答えが得られないことにすぐに気付きました。それは、昼休みの終わりに急いで質問をしたことで得られるものです. うまくいけば、これはより明確になります:
単純な C 構造を PyBuffer として Python (3.x) に公開しようとしているので、そこから MemoryView を取得できます。公開したい構造は次のようになります。
struct ImageBuffer {
void* bytes;
int row_count;
int bytes_per_row;
};
スクリプト作成者が次のようにデータにアクセスできるようにすることが私の望みです。
img_buffer = img.get_buffer()
img_buffer[1::4] = 255 # Set every Red component to full intensity
残念ながら、これらの構造の C API に関する既存のドキュメントはかなりまばらで、自己矛盾している箇所があり、他の箇所では完全に間違っています (ドキュメントに記載されている関数シグネチャがヘッダー内のものと一致しないなど)。これを公開する最善の方法についてのアイデア。また、コア ライブラリの一部であるべき機能を実現するためにサード パーティのライブラリを含めることは避けたいと思いますが、PyBuffer の機能はまだかなり未熟であり、おそらく NumPy のようなものがより良い選択になるでしょう。
これについて誰かアドバイスはありますか?