syntax = "proto3"; package rv.data; option cc_enable_arenas = true; option csharp_namespace = "Pro.SerializationInterop.RVProtoData"; option swift_prefix = "RVData_"; import "color.proto"; import "effects.proto"; import "hotKey.proto"; import "uuid.proto"; message Layer { message Preset { .rv.data.UUID uuid = 1; string name = 2; .rv.data.Layer layer = 3; } message Blending { message Standard { .rv.data.Layer.BlendMode mode = 1; double opacity = 2; } message Matte { reserved 3; message Alpha { bool inverted = 1; } message Luma { bool inverted = 1; } message White { } oneof MatteType { .rv.data.Layer.Blending.Matte.Alpha alpha = 1; .rv.data.Layer.Blending.Matte.Luma luma = 2; .rv.data.Layer.Blending.Matte.White white = 4; } } oneof BlendingType { .rv.data.Layer.Blending.Standard standard = 1; .rv.data.Layer.Blending.Matte matte = 2; } } enum BlendMode { BLEND_MODE_NORMAL = 0; BLEND_MODE_DISSOLVE = 1; BLEND_MODE_DARKEN = 2; BLEND_MODE_MULTIPLY = 3; BLEND_MODE_COLOR_BURN = 4; BLEND_MODE_LINEAR_BURN = 5; BLEND_MODE_DARKER_COLOR = 6; BLEND_MODE_LIGHTEN = 7; BLEND_MODE_SCREEN = 8; BLEND_MODE_COLOR_DODGE = 9; BLEND_MODE_LINEAR_DODGE = 10; BLEND_MODE_LIGHTER_COLOR = 11; BLEND_MODE_OVERLAY = 12; BLEND_MODE_SOFT_LIGHT = 13; BLEND_MODE_HARD_LIGHT = 14; BLEND_MODE_VIVID_LIGHT = 15; BLEND_MODE_LINEAR_LIGHT = 16; BLEND_MODE_PIN_LIGHT = 17; BLEND_MODE_HARD_MIX = 18; BLEND_MODE_DIFFERENCE = 19; BLEND_MODE_EXCLUSION = 20; BLEND_MODE_SUBTRACT = 21; BLEND_MODE_DIVIDE = 22; BLEND_MODE_HUE = 23; BLEND_MODE_SATURATION = 24; BLEND_MODE_COLOR = 25; BLEND_MODE_LUMINOSITY = 26; } .rv.data.UUID uuid = 1; string name = 2; .rv.data.Color color = 3; bool muted = 4; bool hidden = 5; .rv.data.Layer.BlendMode blend_mode = 6; double opacity = 7; .rv.data.UUID selected_target_set_uuid = 8; .rv.data.UUID effects_preset_uuid = 9; double effects_build_duration = 10; .rv.data.UUID layer_preset_uuid = 11; .rv.data.HotKey hot_key = 12; .rv.data.Transition transition = 13; repeated .rv.data.Effect effects = 14; .rv.data.Layer.Blending blend = 15; }