/* osgEarth
 * Copyright 2025 Pelican Mapping
 * MIT License
 */
#ifndef OSGEARTH_DRIVER_KML_KML_GEOMETRY
#define OSGEARTH_DRIVER_KML_KML_GEOMETRY 1

#include "KML_Object"
#include <osgEarth/Geometry>

namespace osgEarth_kml
{
    using namespace osgEarth;

    struct KML_Geometry : public KML_Object
    {
        KML_Geometry() : _extrude(false), _tessellate(false) { }
        virtual void parseCoords( xml_node<>* node, KMLContext& cx );
        virtual void parseStyle( xml_node<>* node, KMLContext& cs, Style& style );
        virtual void build( xml_node<>* node, KMLContext& cx, Style& style );
        void buildChild( xml_node<>* node, KMLContext& cx, Style& style );
        osg::ref_ptr<Geometry> _geom;
        bool _extrude, _tessellate;
    private:    
    };

} // namespace osgEarth_kml

#endif // OSGEARTH_DRIVER_KML_KML_GEOMETRY
