
    vh                     F   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm	Z
 ej                  Zej                  Zej                  Zej                  Zej                  Zej                   Zej"                  Zej$                  Zej&                  Zej(                  Zej*                  Zej,                  Zej.                  Zej0                  Zej2                  Zej4                  Zde
j6                  d	ej8                  fd
Zde
j6                  d	eej8                     fdZy)z%The public facing packet getter APIs.    )List)message)message_factory)symbol_database)_packet_getter)packetr   returnc                 F   t        j                  |       }	 t        j                         j                  j                  |      }t        j                  |      }t        j                  |       } |       }|j                  |       |S # t        $ r t        d|z        w xY w)a  Get the content of a MediaPipe proto Packet as a proto message.

  Args:
    packet: A MediaPipe proto Packet.

  Returns:
    A proto message.

  Raises:
    TypeError: If the message descriptor can't be found by type name.

  Examples:
    detection = detection_pb2.Detection()
    text_format.Parse('score: 0.5', detection)
    proto_packet = mp.packet_creator.create_proto(detection)
    output_proto = mp.packet_getter.get_proto(proto_packet)
  0Can not find message descriptor by type name: %s)r   _get_proto_type_namer   DefaultpoolFindMessageTypeByNameKeyError	TypeErrorr   GetMessageClass_get_serialized_protoParseFromString)r   proto_type_name
descriptormessage_classserialized_protoproto_messages         Y/opt/face_recognition/venv/lib/python3.12/site-packages/mediapipe/python/packet_getter.py	get_protor   +   s    & #77?/% ((*//EEJ "11*=-#99&A/- 01	 
 %
F#$ % %%s   -B B c                    t        j                  |       }|dk(  rg S t        j                  |       }	 t        j                         j
                  j                  |      }t        j                  |      }t        j                  |       }g }|D ]+  } |       }|j                  |       |j                  |       - |S # t        $ r t        d|z        w xY w)aH  Get the content of a MediaPipe proto vector Packet as a proto message list.

  Args:
    packet: A MediaPipe proto vector Packet.

  Returns:
    A proto message list.

  Raises:
    TypeError: If the message descriptor can't be found by type name.

  Examples:
    proto_list = mp.packet_getter.get_proto_list(protos_packet)
  r   r   )r   _get_proto_vector_size#_get_proto_vector_element_type_namer   r   r   r   r   r   r   r   _get_serialized_proto_listr   append)	r   vector_sizer   r   r   serialized_protosproto_message_listr   r   s	            r   get_proto_listr$   P   s      55f=+ AI #FFvN/% ((*//EEJ
 "11*=-$??G+ -!OM!!"23m,- 
 
 %
F#$ % %%s   -B> >CN)__doc__typingr   google.protobufr   r   r   $mediapipe.python._framework_bindingsr   r   	mp_packetget_str	get_bytesget_boolget_intget_uint	get_floatget_int_listget_bool_listget_float_listget_str_listget_image_listget_packet_listget_str_to_packet_dict	get_imageget_image_frame
get_matrixPacketMessager   r$        r   <module>r>      s   ,  # + + ? D

 
 $$	""

 
 ""$$	**,,..**.. 00'>> $$	 00&&
"i&& "7?? "J(9++ (W__0E (r=   