using System;
using System.Collections.Generic;
using UnityEngine;
namespace UnityEditor.Rendering
{
///
/// This attributes tells a class which type of
/// it's an editor for.
/// When you make a custom editor for a component, you need put this attribute on the editor
/// class.
///
///
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
[Obsolete("VolumeComponentEditor property has been deprecated. Please use CustomEditor. #from(2022.2)")]
public sealed class VolumeComponentEditorAttribute : CustomEditor
{
///
/// A type derived from .
///
public readonly Type componentType;
///
/// Creates a new instance.
///
/// A type derived from
public VolumeComponentEditorAttribute(Type componentType)
: base(componentType, true)
{
this.componentType = componentType;
}
}
///
/// Interface that should be used with [ScriptableRenderPipelineExtension(type))] attribute to dispatch ContextualMenu calls on the different SRPs
///
/// This must be a component that require AdditionalData in your SRP
[Obsolete("The menu items are handled automatically for components with the AdditionalComponentData attribute. #from(2022.2)", false)]
public interface IRemoveAdditionalDataContextualMenu
where T : Component
{
///
/// Remove the given component
///
/// The component to remove
/// Dependencies.
void RemoveComponent(T component, IEnumerable dependencies);
}
}