Program Listing for File EnvironmentGraphVis.h

Return to documentation for file (include/flamegpu/visualiser/EnvironmentGraphVis.h)

#ifndef INCLUDE_FLAMEGPU_VISUALISER_ENVIRONMENTGRAPHVIS_H_
#define INCLUDE_FLAMEGPU_VISUALISER_ENVIRONMENTGRAPHVIS_H_
#ifdef FLAMEGPU_VISUALISATION

#include <memory>
#include <string>

#include "flamegpu/visualiser/color/Color.h"

namespace flamegpu {
struct EnvironmentDirectedGraphData;
namespace detail {
class CUDAEnvironmentDirectedGraphBuffers;
}  // namespace detail
namespace visualiser {
struct LineConfig;
struct EnvironmentGraphVisData {
    explicit EnvironmentGraphVisData(std::shared_ptr <EnvironmentDirectedGraphData> _graphData, std::shared_ptr<LineConfig>_lines);
    void constructGraph(const std::shared_ptr<detail::CUDAEnvironmentDirectedGraphBuffers> &graph);
    std::string x_varName = "";
    std::string y_varName = "";
    std::string z_varName = "";
    std::string xy_varName = "";
    std::string xyz_varName = "";
    Color color;
    const std::shared_ptr<EnvironmentDirectedGraphData> graphData;
    const std::shared_ptr<LineConfig> lines;
};
class EnvironmentGraphVis {
 public:
     explicit EnvironmentGraphVis(std::shared_ptr<EnvironmentGraphVisData> data);

    void setXVertexProperty(const std::string &var_name);
    void setYVertexProperty(const std::string &var_name);
    void setZVertexProperty(const std::string &var_name);
    void setXYVertexProperty(const std::string &var_name);
    void setXYZVertexProperty(const std::string &var_name);
     void setColor(const Color& cf);

 private:
    std::shared_ptr<EnvironmentGraphVisData> data;
};
}  // namespace visualiser
}  // namespace flamegpu

#endif  // FLAMEGPU_VISUALISATION
#endif  // INCLUDE_FLAMEGPU_VISUALISER_ENVIRONMENTGRAPHVIS_H_