using Artemis.Storage.Entities.Profile;
namespace Artemis.Core
{
///
/// Represents a property on a layer. Properties are saved in storage and can optionally be modified from the UI.
///
/// Note: You cannot initialize layer properties yourself. If properly placed and annotated, the Artemis core will
/// initialize these for you.
///
///
public interface ILayerProperty : IStorageModel, IUpdateModel
{
///
/// Initializes the layer property
///
/// Note: This isn't done in the constructor to keep it parameterless which is easier for implementations of
///
///
///
void Initialize(RenderProfileElement profileElement, LayerPropertyGroup group, PropertyEntity entity, bool fromStorage, PropertyDescriptionAttribute description);
}
}