using UnityEngine;
namespace Cinemachine
{
///
/// Property applied to LensSettings. Used for custom drawing in the inspector.
///
public sealed class LensSettingsPropertyAttribute : PropertyAttribute
{
}
///
/// Property applied to CinemachineBlendDefinition. Used for custom drawing in the inspector.
///
public sealed class CinemachineBlendDefinitionPropertyAttribute : PropertyAttribute
{
}
///
/// Invoke play-mode-save for a class. This class's fields will be scanned
/// upon exiting play mode, and its property values will be applied to the scene object.
/// This is a stopgap measure that will become obsolete once Unity implements
/// play-mode-save in a more general way.
///
public sealed class SaveDuringPlayAttribute : System.Attribute
{
}
///
/// Suppresses play-mode-save for a field. Use it if the calsee has [SaveDuringPlay]
/// attribute but there are fields in the class that shouldn't be saved.
///
public sealed class NoSaveDuringPlayAttribute : PropertyAttribute
{
}
/// Property field is a Tag.
public sealed class TagFieldAttribute : PropertyAttribute
{
}
///
/// Atrtribute to control the automatic generation of documentation.
///
[DocumentationSorting(0f, DocumentationSortingAttribute.Level.Undoc)]
public sealed class DocumentationSortingAttribute : System.Attribute
{
/// Refinement level of the documentation
public enum Level
{
/// Type is excluded from documentation
Undoc,
/// Type is documented in the API reference
API,
/// Type is documented in the highly-refined User Manual
UserRef
};
/// Where this type appears in the manual. Smaller number sort earlier.
public float SortOrder { get; private set; }
/// Refinement level of the documentation. The more refined, the more is excluded.
public Level Category { get; private set; }
/// Contructor with specific values
public DocumentationSortingAttribute(float sortOrder, Level category)
{
SortOrder = sortOrder;
Category = category;
}
}
}