Program Listing for File LineVis.h

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

#ifndef INCLUDE_FLAMEGPU_VISUALISER_LINEVIS_H_
#define INCLUDE_FLAMEGPU_VISUALISER_LINEVIS_H_
#ifdef FLAMEGPU_VISUALISATION

#include <memory>

// @todo - All vis headers should live in the vis repo.
#include "flamegpu/visualiser/config/LineConfig.h"

namespace flamegpu {
namespace visualiser {

class LineVis {
 public:
    LineVis(std::shared_ptr<LineConfig> l, float r, float g, float b, float a);
    void setColor(float r, float g, float b, float a = 1.0f);
    void addVertex(float x, float y, float z = 0.0f);
    void clear();

 private:
    float currentColor[4];
    std::shared_ptr<LineConfig> l;
};

}  // namespace visualiser
}  // namespace flamegpu

#endif  // FLAMEGPU_VISUALISATION
#endif  // INCLUDE_FLAMEGPU_VISUALISER_LINEVIS_H_