// @generated by tools/generate_api_shims.py; do not edit by hand.
#![allow(clippy::missing_errors_doc)]
#![allow(clippy::must_use_candidate)]
#![allow(clippy::all, clippy::pedantic, dead_code, unused_variables)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]

/// C# type: `T:LibreMetaverse.Rendering.SimpleRenderer`.
pub struct SimpleRenderer;
impl SimpleRenderer {
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.#ctor`.
    pub fn new() -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.Rendering.SimpleRenderer.#ctor")
    }
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.GenerateFacetedMesh(LibreMetaverse.Primitive,LibreMetaverse.Rendering.DetailLevel)`.
    pub fn generate_faceted_mesh(
        &self,
        prim: libremetaverse::Primitive,
        lod: libremetaverse::rendering::DetailLevel,
    ) -> Result<libremetaverse::rendering::FacetedMesh, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.Rendering.SimpleRenderer.GenerateFacetedMesh(LibreMetaverse.Primitive,LibreMetaverse.Rendering.DetailLevel)",
        )
    }
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.GenerateFacetedSculptMesh(LibreMetaverse.Primitive,LibreMetaverse.Imaging.ManagedImage,LibreMetaverse.Rendering.DetailLevel)`.
    pub fn generate_faceted_sculpt_mesh(
        &self,
        prim: libremetaverse::Primitive,
        sculpt_texture: libremetaverse_imaging::ManagedImage,
        lod: libremetaverse::rendering::DetailLevel,
    ) -> Result<libremetaverse::rendering::FacetedMesh, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.Rendering.SimpleRenderer.GenerateFacetedSculptMesh(LibreMetaverse.Primitive,LibreMetaverse.Imaging.ManagedImage,LibreMetaverse.Rendering.DetailLevel)",
        )
    }
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.GenerateSimpleMesh(LibreMetaverse.Primitive,LibreMetaverse.Rendering.DetailLevel)`.
    pub fn generate_simple_mesh(
        &self,
        prim: libremetaverse::Primitive,
        lod: libremetaverse::rendering::DetailLevel,
    ) -> Result<libremetaverse::rendering::SimpleMesh, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.Rendering.SimpleRenderer.GenerateSimpleMesh(LibreMetaverse.Primitive,LibreMetaverse.Rendering.DetailLevel)",
        )
    }
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.GenerateSimpleSculptMesh(LibreMetaverse.Primitive,LibreMetaverse.Imaging.ManagedImage,LibreMetaverse.Rendering.DetailLevel)`.
    pub fn generate_simple_sculpt_mesh(
        &self,
        prim: libremetaverse::Primitive,
        sculpt_texture: libremetaverse_imaging::ManagedImage,
        lod: libremetaverse::rendering::DetailLevel,
    ) -> Result<libremetaverse::rendering::SimpleMesh, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.Rendering.SimpleRenderer.GenerateSimpleSculptMesh(LibreMetaverse.Primitive,LibreMetaverse.Imaging.ManagedImage,LibreMetaverse.Rendering.DetailLevel)",
        )
    }
    /// C# member: `M:LibreMetaverse.Rendering.SimpleRenderer.TransformTexCoords(System.Collections.Generic.List{LibreMetaverse.Rendering.Vertex},LibreMetaverse.Vector3,LibreMetaverse.Primitive.TextureEntryFace,LibreMetaverse.Vector3)`.
    pub fn transform_tex_coords(
        &self,
        vertices: &mut Vec<libremetaverse::rendering::Vertex>,
        center: libremetaverse_types::Vector3,
        te_face: libremetaverse::PrimitiveTextureEntryFace,
        prim_scale: libremetaverse_types::Vector3,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.Rendering.SimpleRenderer.TransformTexCoords(System.Collections.Generic.List{LibreMetaverse.Rendering.Vertex},LibreMetaverse.Vector3,LibreMetaverse.Primitive.TextureEntryFace,LibreMetaverse.Vector3)",
        )
    }
}
impl libremetaverse::rendering::IRendering for SimpleRenderer {}
