Pacchetti

I calcolatori comunicano inviando e ricevendo pacchetti. In genere un singolo viene inviato lungo ogni flusso di input in corrispondenza di ciascun timestamp di input. Un pacchetto può Contenere qualsiasi tipo di dati, ad esempio un singolo fotogramma di un video o un singolo numero intero numero di rilevamenti.

Creazione di un pacchetto

In genere i pacchetti vengono creati con mediapipe::MakePacket<T>() o mediapipe::Adopt() (dal pacchetto.h).

// Create a packet containing some new data.
Packet p = MakePacket<MyDataClass>("constructor_argument");
// Make a new packet with the same data and a different timestamp.
Packet p2 = p.At(Timestamp::PostStream());

oppure:

// Create some new data.
auto data = absl::make_unique<MyDataClass>("constructor_argument");
// Create a packet to own the data.
Packet p = Adopt(data.release()).At(Timestamp::PostStream());

Si accede ai dati all'interno di un pacchetto tramite Packet::Get<T>()