#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "services/image_annotation/public/mojom/image_annotation.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "services/image_annotation/public/mojom/image_annotation.mojom-params-data.h"
#include "services/image_annotation/public/mojom/image_annotation.mojom-shared-message-ids.h"
#include "services/image_annotation/public/mojom/image_annotation.mojom-import-headers.h"
#include "services/image_annotation/public/mojom/image_annotation.mojom-test-utils.h"
namespace image_annotation::mojom {
Annotation::Annotation()
: … { … }
Annotation::Annotation(
AnnotationType type_in,
double score_in,
const std::string& text_in)
: … { … }
Annotation::~Annotation() = default;
size_t Annotation::Hash(size_t seed) const { … }
void Annotation::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool Annotation::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
AnnotateImageResult::AnnotateImageResult() : … { … }
AnnotateImageResult::~AnnotateImageResult() { … }
void AnnotateImageResult::set_error_code(
AnnotateImageError error_code) { … }
void AnnotateImageResult::set_annotations(
std::vector<AnnotationPtr> annotations) { … }
void AnnotateImageResult::DestroyActive() { … }
bool AnnotateImageResult::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char ImageProcessor::Name_[] = …;
ImageProcessor::IPCStableHashFunction ImageProcessor::MessageToMethodInfo_(mojo::Message& message) { … }
const char* ImageProcessor::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t ImageProcessor::GetJpgImageData_Sym::IPCStableHash() { … }
# endif
class ImageProcessor_GetJpgImageData_ForwardToCallback
: public mojo::MessageReceiver { … };
ImageProcessorProxy::ImageProcessorProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void ImageProcessorProxy::GetJpgImageData(
GetJpgImageDataCallback callback) { … }
class ImageProcessor_GetJpgImageData_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool ImageProcessor_GetJpgImageData_ForwardToCallback::Accept(
mojo::Message* message) { … }
void ImageProcessor_GetJpgImageData_ProxyToResponder::Run(
const std::vector<uint8_t>& in_bytes, int32_t in_width, int32_t in_height) { … }
bool ImageProcessorStubDispatch::Accept(
ImageProcessor* impl,
mojo::Message* message) { … }
bool ImageProcessorStubDispatch::AcceptWithResponder(
ImageProcessor* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kImageProcessorValidationInfo[] = …;
bool ImageProcessorRequestValidator::Accept(mojo::Message* message) { … }
bool ImageProcessorResponseValidator::Accept(mojo::Message* message) { … }
const char Annotator::Name_[] = …;
Annotator::IPCStableHashFunction Annotator::MessageToMethodInfo_(mojo::Message& message) { … }
const char* Annotator::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t Annotator::AnnotateImage_Sym::IPCStableHash() { … }
# endif
class Annotator_AnnotateImage_ForwardToCallback
: public mojo::MessageReceiver { … };
AnnotatorProxy::AnnotatorProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void AnnotatorProxy::AnnotateImage(
const std::string& in_source_id, const std::string& in_description_language_tag, ::mojo::PendingRemote<ImageProcessor> in_image_processor, AnnotateImageCallback callback) { … }
class Annotator_AnnotateImage_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool Annotator_AnnotateImage_ForwardToCallback::Accept(
mojo::Message* message) { … }
void Annotator_AnnotateImage_ProxyToResponder::Run(
AnnotateImageResultPtr in_result) { … }
bool AnnotatorStubDispatch::Accept(
Annotator* impl,
mojo::Message* message) { … }
bool AnnotatorStubDispatch::AcceptWithResponder(
Annotator* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kAnnotatorValidationInfo[] = …;
bool AnnotatorRequestValidator::Accept(mojo::Message* message) { … }
bool AnnotatorResponseValidator::Accept(mojo::Message* message) { … }
const char ImageAnnotationService::Name_[] = …;
ImageAnnotationService::IPCStableHashFunction ImageAnnotationService::MessageToMethodInfo_(mojo::Message& message) { … }
const char* ImageAnnotationService::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t ImageAnnotationService::BindAnnotator_Sym::IPCStableHash() { … }
# endif
ImageAnnotationServiceProxy::ImageAnnotationServiceProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void ImageAnnotationServiceProxy::BindAnnotator(
::mojo::PendingReceiver<Annotator> in_receiver) { … }
bool ImageAnnotationServiceStubDispatch::Accept(
ImageAnnotationService* impl,
mojo::Message* message) { … }
bool ImageAnnotationServiceStubDispatch::AcceptWithResponder(
ImageAnnotationService* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kImageAnnotationServiceValidationInfo[] = …;
bool ImageAnnotationServiceRequestValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::image_annotation::mojom::Annotation::DataView, ::image_annotation::mojom::AnnotationPtr>::Read(
::image_annotation::mojom::Annotation::DataView input,
::image_annotation::mojom::AnnotationPtr* output) { … }
bool UnionTraits<::image_annotation::mojom::AnnotateImageResult::DataView, ::image_annotation::mojom::AnnotateImageResultPtr>::Read(
::image_annotation::mojom::AnnotateImageResult::DataView input,
::image_annotation::mojom::AnnotateImageResultPtr* output) { … }
}
namespace image_annotation::mojom {
void ImageProcessorInterceptorForTesting::GetJpgImageData(GetJpgImageDataCallback callback) { … }
ImageProcessorAsyncWaiter::ImageProcessorAsyncWaiter(
ImageProcessor* proxy) : … { … }
ImageProcessorAsyncWaiter::~ImageProcessorAsyncWaiter() = default;
void ImageProcessorAsyncWaiter::GetJpgImageData(
std::vector<uint8_t>* out_bytes, int32_t* out_width, int32_t* out_height) { … }
void AnnotatorInterceptorForTesting::AnnotateImage(const std::string& source_id, const std::string& description_language_tag, ::mojo::PendingRemote<ImageProcessor> image_processor, AnnotateImageCallback callback) { … }
AnnotatorAsyncWaiter::AnnotatorAsyncWaiter(
Annotator* proxy) : … { … }
AnnotatorAsyncWaiter::~AnnotatorAsyncWaiter() = default;
void AnnotatorAsyncWaiter::AnnotateImage(
const std::string& source_id, const std::string& description_language_tag, ::mojo::PendingRemote<ImageProcessor> image_processor, AnnotateImageResultPtr* out_result) { … }
AnnotateImageResultPtr AnnotatorAsyncWaiter::AnnotateImage(
const std::string& source_id, const std::string& description_language_tag, ::mojo::PendingRemote<ImageProcessor> image_processor) { … }
void ImageAnnotationServiceInterceptorForTesting::BindAnnotator(::mojo::PendingReceiver<Annotator> receiver) { … }
ImageAnnotationServiceAsyncWaiter::ImageAnnotationServiceAsyncWaiter(
ImageAnnotationService* proxy) : … { … }
ImageAnnotationServiceAsyncWaiter::~ImageAnnotationServiceAsyncWaiter() = default;
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif