私は現在 C++ を使用して、boost::graph を使用してグラフ関連の計算を行っています。boost::graph はそのグラフをドット ファイルとして出力でき、std::stringstream を使用して出力ドット ファイルをキャプチャします。したがって、ドットファイルの内容はメモリに常駐します。
ドット ファイルを使用して、グラフを視覚化したいと考えています (できるだけ速く)。したがって、ドットファイルを生成し、svg ファイルを生成して、キャンバスに印刷したいと考えています。グラフは小さく、とにかくメモリが利用可能であるため、これに一時ファイルを使用することは避けたいと思います。
ただし、graphviz libgraph には機能しかありません。これを機能させる唯一の方法は、実際には移植できないextern Agraph_t *agread(FILE *);
ファイルハンドルをハックすることです。struct __FILE
Unix/Linux でライブラリにメモリの内容をファイルとして読み込ませるにはどうすればよいですか?
GraphViz の libcgraph では、ここでオーバーロードされたバージョンを入力できることがわかりましたが、これまでのところ、ドキュメントは有用な場所を示していません。