
// CommonStrokeTessellatorTypes.hpp - internal common declarations for control shader portion of polar stroking on CPU

#ifndef __CommonStrokeTessellatorTypes_hpp__
#define __CommonStrokeTessellatorTypes_hpp__

#include "CommonStrokeTessellatorPrivate.hpp"

struct ParametricDirection {
    float t;
    float theta;
    vec2 normal;

#if defined(__cplusplus)
    ParametricDirection()
        : t(0)
        , theta(0)
        , normal(vec2(0))
    {}
#endif
};

struct ParametricAngle {
    float t;
    float theta;

#if defined(__cplusplus)
    ParametricAngle()
        : t(0)
        , theta(0)
    {}
#endif
};

struct ThetaPosition {
    float theta;
    vec3 position;

#if defined(__cplusplus)
    ThetaPosition()
        : theta(0)
        , position(vec3(0))
    {}
#endif
};

#endif // __CommonStrokeTessellatorTypes_hpp__
