Skip to main content

google_cloud_videointelligence_v1/model/
debug.rs

1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17#[allow(unused_imports)]
18use super::*;
19
20impl std::fmt::Debug for super::AnnotateVideoRequest {
21    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
22        let mut debug_struct = f.debug_struct("AnnotateVideoRequest");
23        debug_struct.field("input_uri", &self.input_uri);
24        debug_struct.field("input_content", &self.input_content);
25        debug_struct.field("features", &self.features);
26        debug_struct.field("video_context", &self.video_context);
27        debug_struct.field("output_uri", &self.output_uri);
28        debug_struct.field("location_id", &self.location_id);
29        if !self._unknown_fields.is_empty() {
30            debug_struct.field("_unknown_fields", &self._unknown_fields);
31        }
32        debug_struct.finish()
33    }
34}
35
36impl std::fmt::Debug for super::VideoContext {
37    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
38        let mut debug_struct = f.debug_struct("VideoContext");
39        debug_struct.field("segments", &self.segments);
40        debug_struct.field("label_detection_config", &self.label_detection_config);
41        debug_struct.field(
42            "shot_change_detection_config",
43            &self.shot_change_detection_config,
44        );
45        debug_struct.field(
46            "explicit_content_detection_config",
47            &self.explicit_content_detection_config,
48        );
49        debug_struct.field("face_detection_config", &self.face_detection_config);
50        debug_struct.field(
51            "speech_transcription_config",
52            &self.speech_transcription_config,
53        );
54        debug_struct.field("text_detection_config", &self.text_detection_config);
55        debug_struct.field("person_detection_config", &self.person_detection_config);
56        debug_struct.field("object_tracking_config", &self.object_tracking_config);
57        if !self._unknown_fields.is_empty() {
58            debug_struct.field("_unknown_fields", &self._unknown_fields);
59        }
60        debug_struct.finish()
61    }
62}
63
64impl std::fmt::Debug for super::LabelDetectionConfig {
65    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
66        let mut debug_struct = f.debug_struct("LabelDetectionConfig");
67        debug_struct.field("label_detection_mode", &self.label_detection_mode);
68        debug_struct.field("stationary_camera", &self.stationary_camera);
69        debug_struct.field("model", &self.model);
70        debug_struct.field(
71            "frame_confidence_threshold",
72            &self.frame_confidence_threshold,
73        );
74        debug_struct.field(
75            "video_confidence_threshold",
76            &self.video_confidence_threshold,
77        );
78        if !self._unknown_fields.is_empty() {
79            debug_struct.field("_unknown_fields", &self._unknown_fields);
80        }
81        debug_struct.finish()
82    }
83}
84
85impl std::fmt::Debug for super::ShotChangeDetectionConfig {
86    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
87        let mut debug_struct = f.debug_struct("ShotChangeDetectionConfig");
88        debug_struct.field("model", &self.model);
89        if !self._unknown_fields.is_empty() {
90            debug_struct.field("_unknown_fields", &self._unknown_fields);
91        }
92        debug_struct.finish()
93    }
94}
95
96impl std::fmt::Debug for super::ObjectTrackingConfig {
97    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
98        let mut debug_struct = f.debug_struct("ObjectTrackingConfig");
99        debug_struct.field("model", &self.model);
100        if !self._unknown_fields.is_empty() {
101            debug_struct.field("_unknown_fields", &self._unknown_fields);
102        }
103        debug_struct.finish()
104    }
105}
106
107impl std::fmt::Debug for super::FaceDetectionConfig {
108    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
109        let mut debug_struct = f.debug_struct("FaceDetectionConfig");
110        debug_struct.field("model", &self.model);
111        debug_struct.field("include_bounding_boxes", &self.include_bounding_boxes);
112        debug_struct.field("include_attributes", &self.include_attributes);
113        if !self._unknown_fields.is_empty() {
114            debug_struct.field("_unknown_fields", &self._unknown_fields);
115        }
116        debug_struct.finish()
117    }
118}
119
120impl std::fmt::Debug for super::PersonDetectionConfig {
121    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
122        let mut debug_struct = f.debug_struct("PersonDetectionConfig");
123        debug_struct.field("include_bounding_boxes", &self.include_bounding_boxes);
124        debug_struct.field("include_pose_landmarks", &self.include_pose_landmarks);
125        debug_struct.field("include_attributes", &self.include_attributes);
126        if !self._unknown_fields.is_empty() {
127            debug_struct.field("_unknown_fields", &self._unknown_fields);
128        }
129        debug_struct.finish()
130    }
131}
132
133impl std::fmt::Debug for super::ExplicitContentDetectionConfig {
134    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
135        let mut debug_struct = f.debug_struct("ExplicitContentDetectionConfig");
136        debug_struct.field("model", &self.model);
137        if !self._unknown_fields.is_empty() {
138            debug_struct.field("_unknown_fields", &self._unknown_fields);
139        }
140        debug_struct.finish()
141    }
142}
143
144impl std::fmt::Debug for super::TextDetectionConfig {
145    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
146        let mut debug_struct = f.debug_struct("TextDetectionConfig");
147        debug_struct.field("language_hints", &self.language_hints);
148        debug_struct.field("model", &self.model);
149        if !self._unknown_fields.is_empty() {
150            debug_struct.field("_unknown_fields", &self._unknown_fields);
151        }
152        debug_struct.finish()
153    }
154}
155
156impl std::fmt::Debug for super::VideoSegment {
157    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
158        let mut debug_struct = f.debug_struct("VideoSegment");
159        debug_struct.field("start_time_offset", &self.start_time_offset);
160        debug_struct.field("end_time_offset", &self.end_time_offset);
161        if !self._unknown_fields.is_empty() {
162            debug_struct.field("_unknown_fields", &self._unknown_fields);
163        }
164        debug_struct.finish()
165    }
166}
167
168impl std::fmt::Debug for super::LabelSegment {
169    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
170        let mut debug_struct = f.debug_struct("LabelSegment");
171        debug_struct.field("segment", &self.segment);
172        debug_struct.field("confidence", &self.confidence);
173        if !self._unknown_fields.is_empty() {
174            debug_struct.field("_unknown_fields", &self._unknown_fields);
175        }
176        debug_struct.finish()
177    }
178}
179
180impl std::fmt::Debug for super::LabelFrame {
181    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
182        let mut debug_struct = f.debug_struct("LabelFrame");
183        debug_struct.field("time_offset", &self.time_offset);
184        debug_struct.field("confidence", &self.confidence);
185        if !self._unknown_fields.is_empty() {
186            debug_struct.field("_unknown_fields", &self._unknown_fields);
187        }
188        debug_struct.finish()
189    }
190}
191
192impl std::fmt::Debug for super::Entity {
193    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
194        let mut debug_struct = f.debug_struct("Entity");
195        debug_struct.field("entity_id", &self.entity_id);
196        debug_struct.field("description", &self.description);
197        debug_struct.field("language_code", &self.language_code);
198        if !self._unknown_fields.is_empty() {
199            debug_struct.field("_unknown_fields", &self._unknown_fields);
200        }
201        debug_struct.finish()
202    }
203}
204
205impl std::fmt::Debug for super::LabelAnnotation {
206    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
207        let mut debug_struct = f.debug_struct("LabelAnnotation");
208        debug_struct.field("entity", &self.entity);
209        debug_struct.field("category_entities", &self.category_entities);
210        debug_struct.field("segments", &self.segments);
211        debug_struct.field("frames", &self.frames);
212        debug_struct.field("version", &self.version);
213        if !self._unknown_fields.is_empty() {
214            debug_struct.field("_unknown_fields", &self._unknown_fields);
215        }
216        debug_struct.finish()
217    }
218}
219
220impl std::fmt::Debug for super::ExplicitContentFrame {
221    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
222        let mut debug_struct = f.debug_struct("ExplicitContentFrame");
223        debug_struct.field("time_offset", &self.time_offset);
224        debug_struct.field("pornography_likelihood", &self.pornography_likelihood);
225        if !self._unknown_fields.is_empty() {
226            debug_struct.field("_unknown_fields", &self._unknown_fields);
227        }
228        debug_struct.finish()
229    }
230}
231
232impl std::fmt::Debug for super::ExplicitContentAnnotation {
233    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
234        let mut debug_struct = f.debug_struct("ExplicitContentAnnotation");
235        debug_struct.field("frames", &self.frames);
236        debug_struct.field("version", &self.version);
237        if !self._unknown_fields.is_empty() {
238            debug_struct.field("_unknown_fields", &self._unknown_fields);
239        }
240        debug_struct.finish()
241    }
242}
243
244impl std::fmt::Debug for super::NormalizedBoundingBox {
245    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
246        let mut debug_struct = f.debug_struct("NormalizedBoundingBox");
247        debug_struct.field("left", &self.left);
248        debug_struct.field("top", &self.top);
249        debug_struct.field("right", &self.right);
250        debug_struct.field("bottom", &self.bottom);
251        if !self._unknown_fields.is_empty() {
252            debug_struct.field("_unknown_fields", &self._unknown_fields);
253        }
254        debug_struct.finish()
255    }
256}
257
258impl std::fmt::Debug for super::FaceDetectionAnnotation {
259    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
260        let mut debug_struct = f.debug_struct("FaceDetectionAnnotation");
261        debug_struct.field("tracks", &self.tracks);
262        debug_struct.field("thumbnail", &self.thumbnail);
263        debug_struct.field("version", &self.version);
264        if !self._unknown_fields.is_empty() {
265            debug_struct.field("_unknown_fields", &self._unknown_fields);
266        }
267        debug_struct.finish()
268    }
269}
270
271impl std::fmt::Debug for super::PersonDetectionAnnotation {
272    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
273        let mut debug_struct = f.debug_struct("PersonDetectionAnnotation");
274        debug_struct.field("tracks", &self.tracks);
275        debug_struct.field("version", &self.version);
276        if !self._unknown_fields.is_empty() {
277            debug_struct.field("_unknown_fields", &self._unknown_fields);
278        }
279        debug_struct.finish()
280    }
281}
282
283impl std::fmt::Debug for super::FaceSegment {
284    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
285        let mut debug_struct = f.debug_struct("FaceSegment");
286        debug_struct.field("segment", &self.segment);
287        if !self._unknown_fields.is_empty() {
288            debug_struct.field("_unknown_fields", &self._unknown_fields);
289        }
290        debug_struct.finish()
291    }
292}
293
294impl std::fmt::Debug for super::FaceFrame {
295    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
296        let mut debug_struct = f.debug_struct("FaceFrame");
297        debug_struct.field("normalized_bounding_boxes", &self.normalized_bounding_boxes);
298        debug_struct.field("time_offset", &self.time_offset);
299        if !self._unknown_fields.is_empty() {
300            debug_struct.field("_unknown_fields", &self._unknown_fields);
301        }
302        debug_struct.finish()
303    }
304}
305
306impl std::fmt::Debug for super::FaceAnnotation {
307    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
308        let mut debug_struct = f.debug_struct("FaceAnnotation");
309        debug_struct.field("thumbnail", &self.thumbnail);
310        debug_struct.field("segments", &self.segments);
311        debug_struct.field("frames", &self.frames);
312        if !self._unknown_fields.is_empty() {
313            debug_struct.field("_unknown_fields", &self._unknown_fields);
314        }
315        debug_struct.finish()
316    }
317}
318
319impl std::fmt::Debug for super::TimestampedObject {
320    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
321        let mut debug_struct = f.debug_struct("TimestampedObject");
322        debug_struct.field("normalized_bounding_box", &self.normalized_bounding_box);
323        debug_struct.field("time_offset", &self.time_offset);
324        debug_struct.field("attributes", &self.attributes);
325        debug_struct.field("landmarks", &self.landmarks);
326        if !self._unknown_fields.is_empty() {
327            debug_struct.field("_unknown_fields", &self._unknown_fields);
328        }
329        debug_struct.finish()
330    }
331}
332
333impl std::fmt::Debug for super::Track {
334    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
335        let mut debug_struct = f.debug_struct("Track");
336        debug_struct.field("segment", &self.segment);
337        debug_struct.field("timestamped_objects", &self.timestamped_objects);
338        debug_struct.field("attributes", &self.attributes);
339        debug_struct.field("confidence", &self.confidence);
340        if !self._unknown_fields.is_empty() {
341            debug_struct.field("_unknown_fields", &self._unknown_fields);
342        }
343        debug_struct.finish()
344    }
345}
346
347impl std::fmt::Debug for super::DetectedAttribute {
348    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
349        let mut debug_struct = f.debug_struct("DetectedAttribute");
350        debug_struct.field("name", &self.name);
351        debug_struct.field("confidence", &self.confidence);
352        debug_struct.field("value", &self.value);
353        if !self._unknown_fields.is_empty() {
354            debug_struct.field("_unknown_fields", &self._unknown_fields);
355        }
356        debug_struct.finish()
357    }
358}
359
360impl std::fmt::Debug for super::DetectedLandmark {
361    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
362        let mut debug_struct = f.debug_struct("DetectedLandmark");
363        debug_struct.field("name", &self.name);
364        debug_struct.field("point", &self.point);
365        debug_struct.field("confidence", &self.confidence);
366        if !self._unknown_fields.is_empty() {
367            debug_struct.field("_unknown_fields", &self._unknown_fields);
368        }
369        debug_struct.finish()
370    }
371}
372
373impl std::fmt::Debug for super::VideoAnnotationResults {
374    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
375        let mut debug_struct = f.debug_struct("VideoAnnotationResults");
376        debug_struct.field("input_uri", &self.input_uri);
377        debug_struct.field("segment", &self.segment);
378        debug_struct.field("segment_label_annotations", &self.segment_label_annotations);
379        debug_struct.field(
380            "segment_presence_label_annotations",
381            &self.segment_presence_label_annotations,
382        );
383        debug_struct.field("shot_label_annotations", &self.shot_label_annotations);
384        debug_struct.field(
385            "shot_presence_label_annotations",
386            &self.shot_presence_label_annotations,
387        );
388        debug_struct.field("frame_label_annotations", &self.frame_label_annotations);
389        debug_struct.field("face_annotations", &self.face_annotations);
390        debug_struct.field(
391            "face_detection_annotations",
392            &self.face_detection_annotations,
393        );
394        debug_struct.field("shot_annotations", &self.shot_annotations);
395        debug_struct.field("explicit_annotation", &self.explicit_annotation);
396        debug_struct.field("speech_transcriptions", &self.speech_transcriptions);
397        debug_struct.field("text_annotations", &self.text_annotations);
398        debug_struct.field("object_annotations", &self.object_annotations);
399        debug_struct.field(
400            "logo_recognition_annotations",
401            &self.logo_recognition_annotations,
402        );
403        debug_struct.field(
404            "person_detection_annotations",
405            &self.person_detection_annotations,
406        );
407        debug_struct.field("error", &self.error);
408        if !self._unknown_fields.is_empty() {
409            debug_struct.field("_unknown_fields", &self._unknown_fields);
410        }
411        debug_struct.finish()
412    }
413}
414
415impl std::fmt::Debug for super::AnnotateVideoResponse {
416    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
417        let mut debug_struct = f.debug_struct("AnnotateVideoResponse");
418        debug_struct.field("annotation_results", &self.annotation_results);
419        if !self._unknown_fields.is_empty() {
420            debug_struct.field("_unknown_fields", &self._unknown_fields);
421        }
422        debug_struct.finish()
423    }
424}
425
426impl std::fmt::Debug for super::VideoAnnotationProgress {
427    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
428        let mut debug_struct = f.debug_struct("VideoAnnotationProgress");
429        debug_struct.field("input_uri", &self.input_uri);
430        debug_struct.field("progress_percent", &self.progress_percent);
431        debug_struct.field("start_time", &self.start_time);
432        debug_struct.field("update_time", &self.update_time);
433        debug_struct.field("feature", &self.feature);
434        debug_struct.field("segment", &self.segment);
435        if !self._unknown_fields.is_empty() {
436            debug_struct.field("_unknown_fields", &self._unknown_fields);
437        }
438        debug_struct.finish()
439    }
440}
441
442impl std::fmt::Debug for super::AnnotateVideoProgress {
443    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
444        let mut debug_struct = f.debug_struct("AnnotateVideoProgress");
445        debug_struct.field("annotation_progress", &self.annotation_progress);
446        if !self._unknown_fields.is_empty() {
447            debug_struct.field("_unknown_fields", &self._unknown_fields);
448        }
449        debug_struct.finish()
450    }
451}
452
453impl std::fmt::Debug for super::SpeechTranscriptionConfig {
454    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
455        let mut debug_struct = f.debug_struct("SpeechTranscriptionConfig");
456        debug_struct.field("language_code", &self.language_code);
457        debug_struct.field("max_alternatives", &self.max_alternatives);
458        debug_struct.field("filter_profanity", &self.filter_profanity);
459        debug_struct.field("speech_contexts", &self.speech_contexts);
460        debug_struct.field(
461            "enable_automatic_punctuation",
462            &self.enable_automatic_punctuation,
463        );
464        debug_struct.field("audio_tracks", &self.audio_tracks);
465        debug_struct.field(
466            "enable_speaker_diarization",
467            &self.enable_speaker_diarization,
468        );
469        debug_struct.field("diarization_speaker_count", &self.diarization_speaker_count);
470        debug_struct.field("enable_word_confidence", &self.enable_word_confidence);
471        if !self._unknown_fields.is_empty() {
472            debug_struct.field("_unknown_fields", &self._unknown_fields);
473        }
474        debug_struct.finish()
475    }
476}
477
478impl std::fmt::Debug for super::SpeechContext {
479    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
480        let mut debug_struct = f.debug_struct("SpeechContext");
481        debug_struct.field("phrases", &self.phrases);
482        if !self._unknown_fields.is_empty() {
483            debug_struct.field("_unknown_fields", &self._unknown_fields);
484        }
485        debug_struct.finish()
486    }
487}
488
489impl std::fmt::Debug for super::SpeechTranscription {
490    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
491        let mut debug_struct = f.debug_struct("SpeechTranscription");
492        debug_struct.field("alternatives", &self.alternatives);
493        debug_struct.field("language_code", &self.language_code);
494        if !self._unknown_fields.is_empty() {
495            debug_struct.field("_unknown_fields", &self._unknown_fields);
496        }
497        debug_struct.finish()
498    }
499}
500
501impl std::fmt::Debug for super::SpeechRecognitionAlternative {
502    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
503        let mut debug_struct = f.debug_struct("SpeechRecognitionAlternative");
504        debug_struct.field("transcript", &self.transcript);
505        debug_struct.field("confidence", &self.confidence);
506        debug_struct.field("words", &self.words);
507        if !self._unknown_fields.is_empty() {
508            debug_struct.field("_unknown_fields", &self._unknown_fields);
509        }
510        debug_struct.finish()
511    }
512}
513
514impl std::fmt::Debug for super::WordInfo {
515    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
516        let mut debug_struct = f.debug_struct("WordInfo");
517        debug_struct.field("start_time", &self.start_time);
518        debug_struct.field("end_time", &self.end_time);
519        debug_struct.field("word", &self.word);
520        debug_struct.field("confidence", &self.confidence);
521        debug_struct.field("speaker_tag", &self.speaker_tag);
522        if !self._unknown_fields.is_empty() {
523            debug_struct.field("_unknown_fields", &self._unknown_fields);
524        }
525        debug_struct.finish()
526    }
527}
528
529impl std::fmt::Debug for super::NormalizedVertex {
530    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
531        let mut debug_struct = f.debug_struct("NormalizedVertex");
532        debug_struct.field("x", &self.x);
533        debug_struct.field("y", &self.y);
534        if !self._unknown_fields.is_empty() {
535            debug_struct.field("_unknown_fields", &self._unknown_fields);
536        }
537        debug_struct.finish()
538    }
539}
540
541impl std::fmt::Debug for super::NormalizedBoundingPoly {
542    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
543        let mut debug_struct = f.debug_struct("NormalizedBoundingPoly");
544        debug_struct.field("vertices", &self.vertices);
545        if !self._unknown_fields.is_empty() {
546            debug_struct.field("_unknown_fields", &self._unknown_fields);
547        }
548        debug_struct.finish()
549    }
550}
551
552impl std::fmt::Debug for super::TextSegment {
553    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
554        let mut debug_struct = f.debug_struct("TextSegment");
555        debug_struct.field("segment", &self.segment);
556        debug_struct.field("confidence", &self.confidence);
557        debug_struct.field("frames", &self.frames);
558        if !self._unknown_fields.is_empty() {
559            debug_struct.field("_unknown_fields", &self._unknown_fields);
560        }
561        debug_struct.finish()
562    }
563}
564
565impl std::fmt::Debug for super::TextFrame {
566    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
567        let mut debug_struct = f.debug_struct("TextFrame");
568        debug_struct.field("rotated_bounding_box", &self.rotated_bounding_box);
569        debug_struct.field("time_offset", &self.time_offset);
570        if !self._unknown_fields.is_empty() {
571            debug_struct.field("_unknown_fields", &self._unknown_fields);
572        }
573        debug_struct.finish()
574    }
575}
576
577impl std::fmt::Debug for super::TextAnnotation {
578    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
579        let mut debug_struct = f.debug_struct("TextAnnotation");
580        debug_struct.field("text", &self.text);
581        debug_struct.field("segments", &self.segments);
582        debug_struct.field("version", &self.version);
583        if !self._unknown_fields.is_empty() {
584            debug_struct.field("_unknown_fields", &self._unknown_fields);
585        }
586        debug_struct.finish()
587    }
588}
589
590impl std::fmt::Debug for super::ObjectTrackingFrame {
591    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
592        let mut debug_struct = f.debug_struct("ObjectTrackingFrame");
593        debug_struct.field("normalized_bounding_box", &self.normalized_bounding_box);
594        debug_struct.field("time_offset", &self.time_offset);
595        if !self._unknown_fields.is_empty() {
596            debug_struct.field("_unknown_fields", &self._unknown_fields);
597        }
598        debug_struct.finish()
599    }
600}
601
602impl std::fmt::Debug for super::ObjectTrackingAnnotation {
603    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
604        let mut debug_struct = f.debug_struct("ObjectTrackingAnnotation");
605        debug_struct.field("entity", &self.entity);
606        debug_struct.field("confidence", &self.confidence);
607        debug_struct.field("frames", &self.frames);
608        debug_struct.field("version", &self.version);
609        debug_struct.field("track_info", &self.track_info);
610        if !self._unknown_fields.is_empty() {
611            debug_struct.field("_unknown_fields", &self._unknown_fields);
612        }
613        debug_struct.finish()
614    }
615}
616
617impl std::fmt::Debug for super::LogoRecognitionAnnotation {
618    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
619        let mut debug_struct = f.debug_struct("LogoRecognitionAnnotation");
620        debug_struct.field("entity", &self.entity);
621        debug_struct.field("tracks", &self.tracks);
622        debug_struct.field("segments", &self.segments);
623        if !self._unknown_fields.is_empty() {
624            debug_struct.field("_unknown_fields", &self._unknown_fields);
625        }
626        debug_struct.finish()
627    }
628}