Sync the bundled .proto definitions with greyshirtguy/ProPresenter7-Proto "Proto 19beta" (dumped from ProPresenter v19 beta build 318767123, 2025-06-05). This pulls in the schema for ProPresenter 19 features including new advertisement groups, custom options, media metadata, prop API v1, transport API, feature flags, PSB workspace, and zone definitions, plus refactored analytics tracked events. Strategy: merge rather than wholesale replace. All Proto 19beta files overwrite our existing copies so we pick up the field/message updates upstream made between 7.16.2 and 19beta. Eleven new .proto files are added: advertisementGroup, analyticsEdit, analyticsMediaManagement, analyticsPowerPoint, analyticsTrackedEvents, analyticsTriggerCue, customOptions, mediaMetadata, proCoreFeatureFlags, psbWorkspace, zone. Three google/protobuf well-known types (any, source_context, type) are added for completeness; only descriptor.proto is actually imported. Five proto files are kept that are not part of Proto 19beta upstream: calendar.proto and keyMappings.proto were extracted from PP binaries to support our parse-calendar and parse-key-mappings tools, while analyticsCapture/Update/WHMStore.proto are retained from the prior 7.16.2 set so existing generated descriptors keep loading. generated/ is regenerated from scratch with `protoc --php_out=generated --proto_path=proto *.proto` (protoc 29.3, google/protobuf PHP 4.33.5). The full PHPUnit suite (369 tests, 1298 assertions) still passes without any source changes - the new schema is wire-compatible with our reference files and high-level wrappers. Documentation references to "v7.16.2" are updated to "Proto 19beta" in LICENSE, doc/formats/pp_song_spec.md, pp_playlist_spec.md, pp_bundle_spec.md, and doc/internal/decisions.md.
80 lines
2 KiB
PHP
80 lines
2 KiB
PHP
<?php
|
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
# NO CHECKED-IN PROTOBUF GENCODE
|
|
# source: analyticsTrackedEvents.proto
|
|
|
|
namespace Rv\Analytics\Trackedevents;
|
|
|
|
use UnexpectedValueException;
|
|
|
|
/**
|
|
* Protobuf type <code>rv.analytics.trackedevents.FrameRate</code>
|
|
*/
|
|
class FrameRate
|
|
{
|
|
/**
|
|
* Generated from protobuf enum <code>UNSPECIFIED = 0;</code>
|
|
*/
|
|
const UNSPECIFIED = 0;
|
|
/**
|
|
* Generated from protobuf enum <code>_24FPS = 1;</code>
|
|
*/
|
|
const _24FPS = 1;
|
|
/**
|
|
* Generated from protobuf enum <code>_25FPS = 2;</code>
|
|
*/
|
|
const _25FPS = 2;
|
|
/**
|
|
* Generated from protobuf enum <code>_2997FPS = 3;</code>
|
|
*/
|
|
const _2997FPS = 3;
|
|
/**
|
|
* Generated from protobuf enum <code>_30FPS = 4;</code>
|
|
*/
|
|
const _30FPS = 4;
|
|
/**
|
|
* Generated from protobuf enum <code>_50FPS = 5;</code>
|
|
*/
|
|
const _50FPS = 5;
|
|
/**
|
|
* Generated from protobuf enum <code>_5994FPS = 6;</code>
|
|
*/
|
|
const _5994FPS = 6;
|
|
/**
|
|
* Generated from protobuf enum <code>_60FPS = 7;</code>
|
|
*/
|
|
const _60FPS = 7;
|
|
|
|
private static $valueToName = [
|
|
self::UNSPECIFIED => 'UNSPECIFIED',
|
|
self::_24FPS => '_24FPS',
|
|
self::_25FPS => '_25FPS',
|
|
self::_2997FPS => '_2997FPS',
|
|
self::_30FPS => '_30FPS',
|
|
self::_50FPS => '_50FPS',
|
|
self::_5994FPS => '_5994FPS',
|
|
self::_60FPS => '_60FPS',
|
|
];
|
|
|
|
public static function name($value)
|
|
{
|
|
if (!isset(self::$valueToName[$value])) {
|
|
throw new UnexpectedValueException(sprintf(
|
|
'Enum %s has no name defined for value %s', __CLASS__, $value));
|
|
}
|
|
return self::$valueToName[$value];
|
|
}
|
|
|
|
|
|
public static function value($name)
|
|
{
|
|
$const = __CLASS__ . '::' . strtoupper($name);
|
|
if (!defined($const)) {
|
|
throw new UnexpectedValueException(sprintf(
|
|
'Enum %s has no value defined for name %s', __CLASS__, $name));
|
|
}
|
|
return constant($const);
|
|
}
|
|
}
|
|
|