こんにちは
質問があります。
1つ目のプロジェクトAで時々刻々変化する値を作ったとき
それをもう1つのプロジェクトBによってリアルタイムプロットしたいです。
しかし、2つのプロジェクト間で変数の共有の仕方が分かりませんでした。
そこで、私はプロジェクトBにgnuplotを使おうと思い、一度、fopen で
共有FILEを作って fprintf でプロジェクトAの変数を保存し
それを逐次プロジェクトBが fscanf で読み取りgnuplotで表示する
方法にしようと考えました。
ですが、まず共有するファイルの作り方が分かりません。
教えて下さい。お願いします。
c++とVS2015でリアルタイムプロットしたい!
Re: c++とVS2015でリアルタイムプロットしたい!
リアルタイムデータをプロセス間でやり取りする場合、たぶん共有ファイルを使うより名前付きパイプなどの通信手法を使ったほうが簡単にできると思います。
ただ、私はgnuplotがどんなものか知らないので的外れなコメントでしたらごめんなさい。
ただ、私はgnuplotがどんなものか知らないので的外れなコメントでしたらごめんなさい。
Re: c++とVS2015でリアルタイムプロットしたい!
根本的に,プロセスを分離する意味はあるのでしょうか。
説明からでは,プロジェクトAとBが独立している意味を読み取れませんでした。
まぁ,プロセス間通信と大上段に構えなくても,
そもそもgnuplotってサンプルをリアルタイム描画するような機能ってありましたっけ。
式を描画したり,何らかのファイルを読み込んで2次元/3次元描画する機能があるのは知っていますが,全部読み込んでから描画ではなかったでしょうか。
# 最近のgnuplotに追加されたのか,昔からあったけれど私が知らないだけか……。
説明からでは,プロジェクトAとBが独立している意味を読み取れませんでした。
オフトピック
プロセスはOSでの実行単位,プロジェクトはVisual Studio等の成果物生成単位です。
プロジェクトを分離してもライブラリ等の形で単一プロセスで実行することが出来るため,最初はプロセス分離としています。
プロジェクトを分離してもライブラリ等の形で単一プロセスで実行することが出来るため,最初はプロセス分離としています。
- Aが生成した値を標準出力に出力していく
- Bは標準入力から値を入力してgnuplotを使って表示する
そもそもgnuplotってサンプルをリアルタイム描画するような機能ってありましたっけ。
式を描画したり,何らかのファイルを読み込んで2次元/3次元描画する機能があるのは知っていますが,全部読み込んでから描画ではなかったでしょうか。
# 最近のgnuplotに追加されたのか,昔からあったけれど私が知らないだけか……。