chromium/third_party/mediapipe/src/mediapipe/framework/tool/options_registry.h

#ifndef MEDIAPIPE_FRAMEWORK_TOOL_OPTIONS_REGISTRY_H_
#define MEDIAPIPE_FRAMEWORK_TOOL_OPTIONS_REGISTRY_H_

#include <string>

#include "absl/container/flat_hash_map.h"
#include "mediapipe/framework/deps/registration.h"
#include "mediapipe/framework/port/advanced_proto_inc.h"
#include "mediapipe/framework/tool/field_data.pb.h"

namespace mediapipe {
namespace tool {

class Descriptor;
class FieldDescriptor;
FieldType;
FieldData;

// A static registry that stores descriptors for protobufs used in MediaPipe
// calculator options. Lite-proto builds do not normally include descriptors.
// These registered descriptors allow individual protobuf fields to be
// referenced and specified separately within CalculatorGraphConfigs.
class OptionsRegistry {};

// A custom implementation proto_ns::Descriptor.  This implementation
// avoids a code size problem introduced by proto_ns::FieldDescriptor.
class Descriptor {};

// A custom implementation proto_ns::FieldDescriptor.  This implementation
// avoids a code size problem introduced by proto_ns::FieldDescriptor.
class FieldDescriptor {};

}  // namespace tool
}  // namespace mediapipe

#endif  // MEDIAPIPE_FRAMEWORK_TOOL_OPTIONS_REGISTRY_H_