Implement appearance baking pipeline (#66)
Some checks failed
Native code generation / deterministic (push) Failing after 2m18s
Imaging and meshing gate / native (push) Failing after 1m28s
Native Rust workspace compile / compile (push) Failing after 58s

This commit is contained in:
2026-08-10 10:33:29 +00:00
parent a9927fcfcb
commit b1f60db3d6
17 changed files with 3487 additions and 249 deletions

View File

@@ -2888,9 +2888,7 @@ impl AppearanceManager {
libremetaverse::AgentCachedBakesReplyEventArgs,
>,
) -> libremetaverse_types::compat::Subscription {
libremetaverse_types::unimplemented_api!(
"E:LibreMetaverse.AppearanceManager.CachedBakesReply"
)
self.native_subscribe_cached_bakes_reply(handler)
}
/// C# member: `E:LibreMetaverse.AppearanceManager.RebakeAvatarRequested`.
pub fn subscribe_rebake_avatar_requested(
@@ -2899,118 +2897,82 @@ impl AppearanceManager {
libremetaverse::RebakeAvatarTexturesEventArgs,
>,
) -> libremetaverse_types::compat::Subscription {
libremetaverse_types::unimplemented_api!(
"E:LibreMetaverse.AppearanceManager.RebakeAvatarRequested"
)
self.native_subscribe_rebake_avatar_requested(handler)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.ATTACHMENT_ADD`.
pub fn attachment_add() -> u8 {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.ATTACHMENT_ADD"
)
crate::appearance_manager::ATTACHMENT_ADD
}
/// C# member: `F:LibreMetaverse.AppearanceManager.BAKED_TEXTURE_COUNT`.
pub const BAKED_TEXTURE_COUNT: i32 = 11;
/// C# member: `F:LibreMetaverse.AppearanceManager.BAKED_TEXTURE_HASH`.
pub fn baked_texture_hash() -> Vec<libremetaverse_types::UUID> {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.BAKED_TEXTURE_HASH"
)
crate::appearance_manager::baked_texture_hash()
}
/// C# member: `F:LibreMetaverse.AppearanceManager.BakeIndexToTextureIndex`.
pub fn bake_index_to_texture_index() -> Vec<u8> {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.BakeIndexToTextureIndex"
)
crate::appearance_manager::bake_index_to_texture_index()
}
/// C# member: `F:LibreMetaverse.AppearanceManager.DEFAULT_AVATAR_TEXTURE`.
pub fn default_avatar_texture() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.DEFAULT_AVATAR_TEXTURE"
)
crate::appearance_manager::default_avatar_texture()
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX1`.
pub fn img_use_baked_aux1() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX1"
)
crate::appearance_manager::img_use_baked(crate::BakeType::BakedAux1)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX2`.
pub fn img_use_baked_aux2() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX2"
)
crate::appearance_manager::img_use_baked(crate::BakeType::BakedAux2)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX3`.
pub fn img_use_baked_aux3() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_AUX3"
)
crate::appearance_manager::img_use_baked(crate::BakeType::BakedAux3)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_EYES`.
pub fn img_use_baked_eyes() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_EYES"
)
crate::appearance_manager::img_use_baked(crate::BakeType::Eyes)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_HAIR`.
pub fn img_use_baked_hair() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_HAIR"
)
crate::appearance_manager::img_use_baked(crate::BakeType::Hair)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_HEAD`.
pub fn img_use_baked_head() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_HEAD"
)
crate::appearance_manager::img_use_baked(crate::BakeType::Head)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_INDICES`.
pub fn img_use_baked_indices() -> libremetaverse_types::compat::FrozenDictionary<
libremetaverse_types::UUID,
libremetaverse::AvatarTextureIndex,
> {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_INDICES"
)
crate::appearance_manager::img_use_baked_indices()
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LEFTARM`.
pub fn img_use_baked_leftarm() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LEFTARM"
)
crate::appearance_manager::img_use_baked(crate::BakeType::BakedLeftArm)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LEFTLEG`.
pub fn img_use_baked_leftleg() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LEFTLEG"
)
crate::appearance_manager::img_use_baked(crate::BakeType::BakedLeftLeg)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LOWER`.
pub fn img_use_baked_lower() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_LOWER"
)
crate::appearance_manager::img_use_baked(crate::BakeType::LowerBody)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_SKIRT`.
pub fn img_use_baked_skirt() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_SKIRT"
)
crate::appearance_manager::img_use_baked(crate::BakeType::Skirt)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_UPPER`.
pub fn img_use_baked_upper() -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.IMG_USE_BAKED_UPPER"
)
crate::appearance_manager::img_use_baked(crate::BakeType::UpperBody)
}
/// C# member: `F:LibreMetaverse.AppearanceManager.WEARABLES_PER_LAYER`.
pub const WEARABLES_PER_LAYER: i32 = 9;
/// C# member: `F:LibreMetaverse.AppearanceManager.WEARABLE_BAKE_MAP`.
pub fn wearable_bake_map() -> Vec<Vec<libremetaverse_types::WearableType>> {
libremetaverse_types::unimplemented_api!(
"F:LibreMetaverse.AppearanceManager.WEARABLE_BAKE_MAP"
)
crate::appearance_manager::wearable_bake_map()
}
/// C# member: `F:LibreMetaverse.AppearanceManager.WEARABLE_COUNT`.
pub const WEARABLE_COUNT: i32 = 16;
@@ -3092,17 +3054,15 @@ impl AppearanceManager {
pub fn bake_type_to_agent_texture_index(
index: libremetaverse::BakeType,
) -> Result<libremetaverse::AvatarTextureIndex, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.BakeTypeToAgentTextureIndex(LibreMetaverse.BakeType)",
)
Ok(crate::appearance_manager::bake_type_to_agent_texture_index(
index,
))
}
/// C# member: `M:LibreMetaverse.AppearanceManager.BakeTypeToTextures(LibreMetaverse.BakeType)`.
pub fn bake_type_to_textures(
bake_type: libremetaverse::BakeType,
) -> Result<Vec<libremetaverse::AvatarTextureIndex>, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.BakeTypeToTextures(LibreMetaverse.BakeType)",
)
Ok(crate::appearance_manager::bake_type_to_textures(bake_type))
}
/// C# member: `M:LibreMetaverse.AppearanceManager.BlendToArchetype(LibreMetaverse.GenepoolArchetype,System.Single)`.
pub async fn blend_to_archetype(
@@ -3119,9 +3079,7 @@ impl AppearanceManager {
wearable: libremetaverse::AppearanceManagerWearableData,
textures: &mut Vec<libremetaverse::AppearanceManagerTextureData>,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.DecodeWearableParams(LibreMetaverse.AppearanceManager.WearableData,LibreMetaverse.AppearanceManager.TextureData[]@)",
)
crate::appearance_manager::decode_wearable_params(wearable, textures)
}
/// C# member: `M:LibreMetaverse.AppearanceManager.Detach(LibreMetaverse.InventoryItem)`.
pub fn detach_with_inventory_item(
@@ -3189,9 +3147,7 @@ impl AppearanceManager {
pub fn get_color_from_params(
param: Vec<libremetaverse::AppearanceManagerColorParamInfo>,
) -> Result<libremetaverse_types::Color4, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.GetColorFromParams(System.Collections.Generic.List{LibreMetaverse.AppearanceManager.ColorParamInfo})",
)
crate::appearance_manager::color_from_params(param)
}
/// C# member: `M:LibreMetaverse.AppearanceManager.GetCurrentOutfitFolderAsync(System.Threading.CancellationToken)`.
pub async fn get_current_outfit_folder(
@@ -3205,9 +3161,7 @@ impl AppearanceManager {
pub fn get_current_param_values(
&self,
) -> Result<std::collections::HashMap<i32, f32>, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.GetCurrentParamValues",
)
self.native_get_current_param_values()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.GetFolderWearablesAsync(LibreMetaverse.UUID,System.Threading.CancellationToken)`.
pub async fn get_folder_wearables(
@@ -3269,17 +3223,15 @@ impl AppearanceManager {
pub fn make_appearance_packet(
&self,
) -> Result<libremetaverse::packets::AgentSetAppearancePacket, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.MakeAppearancePacket",
)
self.native_make_appearance_packet()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.MorphLayerForBakeType(LibreMetaverse.BakeType)`.
pub fn morph_layer_for_bake_type(
bake_type: libremetaverse::BakeType,
) -> Result<libremetaverse::AvatarTextureIndex, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.MorphLayerForBakeType(LibreMetaverse.BakeType)",
)
Ok(crate::appearance_manager::morph_layer_for_bake_type(
bake_type,
))
}
/// C# member: `M:LibreMetaverse.AppearanceManager.RandomizeAppearance(System.Random)`.
pub async fn randomize_appearance(
@@ -3328,18 +3280,15 @@ impl AppearanceManager {
}
/// C# member: `M:LibreMetaverse.AppearanceManager.RequestCachedBakes`.
pub fn request_cached_bakes(&self) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.RequestCachedBakes",
)
self.native_request_cached_bakes()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.RequestSetAppearance(System.Boolean)`.
pub async fn request_set_appearance(
&self,
force_rebake: Option<bool>,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.RequestSetAppearance(System.Boolean)",
)
self.native_request_set_appearance(force_rebake.unwrap_or(false))
.await
}
/// C# member: `M:LibreMetaverse.AppearanceManager.SendOutfitToCurrentSimulatorAsync(System.Threading.CancellationToken)`.
pub async fn send_outfit_to_current_simulator(
@@ -3350,9 +3299,7 @@ impl AppearanceManager {
}
/// C# member: `M:LibreMetaverse.AppearanceManager.ServerBakingRegion`.
pub fn server_baking_region(&self) -> Result<bool, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.ServerBakingRegion",
)
self.native_server_baking_region()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.UpdateLastReceivedCOFVersion(System.Int32)`.
pub fn update_last_received_cof_version(
@@ -3401,18 +3348,14 @@ impl AppearanceManager {
}
/// C# member: `P:LibreMetaverse.AppearanceManager.TextureProvider`.
pub fn texture_provider(&self) -> std::sync::Arc<dyn libremetaverse::IBakingTextureProvider> {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.AppearanceManager.TextureProvider"
)
self.native_texture_provider()
}
/// Setter for C# member: `P:LibreMetaverse.AppearanceManager.TextureProvider`.
pub fn set_texture_provider(
&mut self,
value: std::sync::Arc<dyn libremetaverse::IBakingTextureProvider>,
) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.AppearanceManager.TextureProvider"
)
self.native_set_texture_provider(value)
}
}
@@ -3445,15 +3388,11 @@ pub struct AppearanceManagerTextureData {
impl AppearanceManagerTextureData {
/// C# member: `M:LibreMetaverse.AppearanceManager.TextureData.#ctor`.
pub fn new() -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.TextureData.#ctor",
)
crate::appearance_manager::texture_data_defaults()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.TextureData.ToString`.
pub fn to_string(&self) -> String {
libremetaverse_types::unimplemented_api!(
"M:LibreMetaverse.AppearanceManager.TextureData.ToString"
)
crate::appearance_manager::texture_data_to_string(self)
}
}
@@ -3474,15 +3413,11 @@ pub struct AppearanceManagerWearableData {
impl AppearanceManagerWearableData {
/// C# member: `M:LibreMetaverse.AppearanceManager.WearableData.#ctor`.
pub fn new() -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceManager.WearableData.#ctor",
)
crate::appearance_manager::wearable_data_defaults()
}
/// C# member: `M:LibreMetaverse.AppearanceManager.WearableData.ToString`.
pub fn to_string(&self) -> String {
libremetaverse_types::unimplemented_api!(
"M:LibreMetaverse.AppearanceManager.WearableData.ToString"
)
crate::appearance_manager::wearable_data_to_string(self)
}
}
@@ -3498,17 +3433,15 @@ impl AppearanceManagerException {
}
/// C# type: `T:LibreMetaverse.AppearanceSetEventArgs`.
pub struct AppearanceSetEventArgs;
pub use crate::appearance_manager::AppearanceSetEventArgs;
impl AppearanceSetEventArgs {
/// C# member: `M:LibreMetaverse.AppearanceSetEventArgs.#ctor(System.Boolean)`.
pub fn new(success: bool) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.AppearanceSetEventArgs.#ctor(System.Boolean)",
)
Ok(crate::appearance_manager::AppearanceSetEventArgs::native_new(success))
}
/// C# member: `P:LibreMetaverse.AppearanceSetEventArgs.Success`.
pub fn success(&self) -> bool {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.AppearanceSetEventArgs.Success")
self.native_success()
}
}
@@ -8948,13 +8881,11 @@ impl GridClient {
}
/// C# type: `T:LibreMetaverse.GridClientBakingTextureProvider`.
pub struct GridClientBakingTextureProvider;
pub use crate::baking_texture_provider::GridClientBakingTextureProvider;
impl GridClientBakingTextureProvider {
/// C# member: `M:LibreMetaverse.GridClientBakingTextureProvider.#ctor(LibreMetaverse.GridClient)`.
pub fn new(client: libremetaverse::GridClient) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.GridClientBakingTextureProvider.#ctor(LibreMetaverse.GridClient)",
)
crate::baking_texture_provider::GridClientBakingTextureProvider::native_new(client)
}
/// C# member: `M:LibreMetaverse.GridClientBakingTextureProvider.RequestTextureAsync(LibreMetaverse.UUID,System.Threading.CancellationToken)`.
pub async fn request_texture(
@@ -8962,12 +8893,10 @@ impl GridClientBakingTextureProvider {
texture_id: libremetaverse_types::UUID,
cancellation_token: Option<libremetaverse_types::compat::CancellationToken>,
) -> Result<Option<libremetaverse::assets::AssetTexture>, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.GridClientBakingTextureProvider.RequestTextureAsync(LibreMetaverse.UUID,System.Threading.CancellationToken)",
)
self.native_request_texture(texture_id, cancellation_token)
.await
}
}
impl libremetaverse::IBakingTextureProvider for GridClientBakingTextureProvider {}
/// C# type: `T:LibreMetaverse.GridClientServiceCollectionExtensions`.
pub struct GridClientServiceCollectionExtensions;
@@ -10779,7 +10708,7 @@ pub use crate::caps_http::HttpCapsClient;
pub use crate::caps_http::HttpCapsClientProgressReport;
/// C# type: `T:LibreMetaverse.IBakingTextureProvider`.
pub trait IBakingTextureProvider: std::any::Any {
pub trait IBakingTextureProvider: std::any::Any + Send + Sync {
/// C# member: `M:LibreMetaverse.IBakingTextureProvider.RequestTextureAsync(LibreMetaverse.UUID,System.Threading.CancellationToken)`.
fn request_texture(
&self,
@@ -19873,19 +19802,15 @@ impl ProtocolManager {
}
/// C# type: `T:LibreMetaverse.RebakeAvatarTexturesEventArgs`.
pub struct RebakeAvatarTexturesEventArgs;
pub use crate::appearance_manager::RebakeAvatarTexturesEventArgs;
impl RebakeAvatarTexturesEventArgs {
/// C# member: `M:LibreMetaverse.RebakeAvatarTexturesEventArgs.#ctor(LibreMetaverse.UUID)`.
pub fn new(texture_id: libremetaverse_types::UUID) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.RebakeAvatarTexturesEventArgs.#ctor(LibreMetaverse.UUID)",
)
Ok(crate::appearance_manager::RebakeAvatarTexturesEventArgs::native_new(texture_id))
}
/// C# member: `P:LibreMetaverse.RebakeAvatarTexturesEventArgs.TextureID`.
pub fn texture_id(&self) -> libremetaverse_types::UUID {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.RebakeAvatarTexturesEventArgs.TextureID"
)
self.native_texture_id()
}
}
@@ -23290,25 +23215,21 @@ pub mod appearance {
}
/// C# type: `T:LibreMetaverse.Appearance.InitialOutfit`.
pub struct InitialOutfit;
pub use crate::initial_outfit::InitialOutfit;
impl InitialOutfit {
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.#ctor(LibreMetaverse.GridClient,LibreMetaverse.Appearance.CurrentOutfitFolder)`.
pub fn new(
client: libremetaverse::GridClient,
cof: libremetaverse::appearance::CurrentOutfitFolder,
) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.#ctor(LibreMetaverse.GridClient,LibreMetaverse.Appearance.CurrentOutfitFolder)",
)
crate::initial_outfit::InitialOutfit::native_new(client, cof)
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.CheckSystemFoldersAsync(System.Threading.CancellationToken)`.
pub async fn check_system_folders(
&self,
cancellation_token: Option<libremetaverse_types::compat::CancellationToken>,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.CheckSystemFoldersAsync(System.Threading.CancellationToken)",
)
self.native_check_system_folders(cancellation_token).await
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.CopyFolderAsync(LibreMetaverse.InventoryFolder,LibreMetaverse.UUID,System.Threading.CancellationToken,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})`.
pub async fn copy_folder(
@@ -23324,9 +23245,8 @@ pub mod appearance {
>,
>,
) -> Result<libremetaverse_types::UUID, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.CopyFolderAsync(LibreMetaverse.InventoryFolder,LibreMetaverse.UUID,System.Threading.CancellationToken,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})",
)
self.native_copy_folder(folder, destination, cancellation_token, progress)
.await
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.CreateFolderAsync(LibreMetaverse.UUID,System.String,LibreMetaverse.FolderType,System.Threading.CancellationToken)`.
pub async fn create_folder(
@@ -23336,18 +23256,15 @@ pub mod appearance {
type_: libremetaverse_types::FolderType,
cancellation_token: Option<libremetaverse_types::compat::CancellationToken>,
) -> Result<libremetaverse_types::UUID, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.CreateFolderAsync(LibreMetaverse.UUID,System.String,LibreMetaverse.FolderType,System.Threading.CancellationToken)",
)
self.native_create_folder(parent, name, type_, cancellation_token)
.await
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.FindNodeByName(LibreMetaverse.InventoryNode,System.String)`.
pub fn find_node_by_name(
root: libremetaverse::InventoryNode,
name: String,
) -> Result<Option<libremetaverse::InventoryNode>, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.FindNodeByName(LibreMetaverse.InventoryNode,System.String)",
)
crate::initial_outfit::InitialOutfit::native_find_node_by_name(root, name)
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.SetInitialOutfitAsync(System.String,System.Threading.CancellationToken,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})`.
pub async fn set_initial_outfit(
@@ -23362,9 +23279,8 @@ pub mod appearance {
>,
>,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.SetInitialOutfitAsync(System.String,System.Threading.CancellationToken,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})",
)
self.native_set_initial_outfit(outfit, cancellation_token, progress)
.await
}
}
@@ -23383,81 +23299,59 @@ pub mod appearance {
}
/// C# type: `T:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress`.
pub struct InitialOutfitInitialOutfitProgress;
pub use crate::initial_outfit::InitialOutfitProgress as InitialOutfitInitialOutfitProgress;
impl InitialOutfitInitialOutfitProgress {
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.#ctor`.
pub fn new() -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.#ctor",
)
crate::initial_outfit::InitialOutfitProgress::native_new()
}
/// C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.CurrentItemName`.
pub fn current_item_name(&self) -> String {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.CurrentItemName"
)
self.native_current_item_name()
}
/// Setter for C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.CurrentItemName`.
pub fn set_current_item_name(&mut self, value: String) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.CurrentItemName"
)
self.native_set_current_item_name(value)
}
/// C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.ItemsCopied`.
pub fn items_copied(&self) -> i32 {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.ItemsCopied"
)
self.native_items_copied()
}
/// Setter for C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.ItemsCopied`.
pub fn set_items_copied(&mut self, value: i32) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.ItemsCopied"
)
self.native_set_items_copied(value)
}
/// C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Message`.
pub fn message(&self) -> String {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Message"
)
self.native_message()
}
/// Setter for C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Message`.
pub fn set_message(&mut self, value: String) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Message"
)
self.native_set_message(value)
}
/// C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Phase`.
pub fn phase(&self) -> libremetaverse::appearance::InitialOutfitInitialOutfitPhase {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Phase"
)
self.native_phase()
}
/// Setter for C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Phase`.
pub fn set_phase(
&mut self,
value: libremetaverse::appearance::InitialOutfitInitialOutfitPhase,
) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.Phase"
)
self.native_set_phase(value)
}
/// C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.TotalItems`.
pub fn total_items(&self) -> i32 {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.TotalItems"
)
self.native_total_items()
}
/// Setter for C# member: `P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.TotalItems`.
pub fn set_total_items(&mut self, value: i32) {
libremetaverse_types::unimplemented_api!(
"P:LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress.TotalItems"
)
self.native_set_total_items(value)
}
}
/// C# type: `T:LibreMetaverse.Appearance.InitialOutfitHandler`.
pub struct InitialOutfitHandler;
pub use crate::initial_outfit::InitialOutfitHandler;
impl InitialOutfitHandler {
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfitHandler.#ctor(LibreMetaverse.GridClient,LibreMetaverse.Appearance.CurrentOutfitFolder,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})`.
pub fn new(
@@ -23471,15 +23365,11 @@ pub mod appearance {
>,
>,
) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfitHandler.#ctor(LibreMetaverse.GridClient,LibreMetaverse.Appearance.CurrentOutfitFolder,System.IProgress{LibreMetaverse.Appearance.InitialOutfit.InitialOutfitProgress})",
)
crate::initial_outfit::InitialOutfitHandler::native_new(client, cof, progress)
}
/// C# member: `M:LibreMetaverse.Appearance.InitialOutfitHandler.Dispose`.
pub fn dispose(&self) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Appearance.InitialOutfitHandler.Dispose",
)
self.native_dispose()
}
}
}
@@ -26647,62 +26537,54 @@ pub mod http {
pub mod imaging {
/// C# type: `T:LibreMetaverse.Imaging.Baker`.
pub struct Baker;
pub use crate::appearance_baker::Baker;
impl Baker {
/// C# member: `M:LibreMetaverse.Imaging.Baker.#ctor(LibreMetaverse.BakeType)`.
pub fn new(bake_type: libremetaverse::BakeType) -> Result<Self, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Imaging.Baker.#ctor(LibreMetaverse.BakeType)",
)
crate::appearance_baker::Baker::native_new(bake_type)
}
/// C# member: `M:LibreMetaverse.Imaging.Baker.AddTexture(LibreMetaverse.AppearanceManager.TextureData)`.
pub fn add_texture(
&mut self,
tdata: libremetaverse::AppearanceManagerTextureData,
) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Imaging.Baker.AddTexture(LibreMetaverse.AppearanceManager.TextureData)",
)
self.native_add_texture(tdata)
}
/// C# member: `M:LibreMetaverse.Imaging.Baker.Bake`.
pub fn bake(&mut self) -> Result<(), crate::Error> {
libremetaverse_types::not_implemented("M:LibreMetaverse.Imaging.Baker.Bake")
self.native_bake()
}
/// C# member: `M:LibreMetaverse.Imaging.Baker.BakeTypeFor(LibreMetaverse.AvatarTextureIndex)`.
pub fn bake_type_for(
index: libremetaverse::AvatarTextureIndex,
) -> Result<libremetaverse::BakeType, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Imaging.Baker.BakeTypeFor(LibreMetaverse.AvatarTextureIndex)",
)
Ok(crate::appearance_baker::Baker::native_bake_type_for(index))
}
/// C# member: `M:LibreMetaverse.Imaging.Baker.LoadResourceLayer(System.String)`.
pub fn load_resource_layer(
file_name: String,
) -> Result<Option<libremetaverse_imaging::ManagedImage>, crate::Error> {
libremetaverse_types::not_implemented(
"M:LibreMetaverse.Imaging.Baker.LoadResourceLayer(System.String)",
)
crate::appearance_baker::Baker::native_load_resource_layer(file_name)
}
/// C# member: `P:LibreMetaverse.Imaging.Baker.BakeHeight`.
pub fn bake_height(&self) -> i32 {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.Imaging.Baker.BakeHeight")
self.native_bake_height()
}
/// C# member: `P:LibreMetaverse.Imaging.Baker.BakeType`.
pub fn bake_type(&self) -> libremetaverse::BakeType {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.Imaging.Baker.BakeType")
self.native_bake_type()
}
/// C# member: `P:LibreMetaverse.Imaging.Baker.BakeWidth`.
pub fn bake_width(&self) -> i32 {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.Imaging.Baker.BakeWidth")
self.native_bake_width()
}
/// C# member: `P:LibreMetaverse.Imaging.Baker.BakedTexture`.
pub fn baked_texture(&self) -> Option<libremetaverse::assets::AssetTexture> {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.Imaging.Baker.BakedTexture")
self.native_baked_texture()
}
/// C# member: `P:LibreMetaverse.Imaging.Baker.Textures`.
pub fn textures(&self) -> Vec<libremetaverse::AppearanceManagerTextureData> {
libremetaverse_types::unimplemented_api!("P:LibreMetaverse.Imaging.Baker.Textures")
self.native_textures()
}
}