#pragma once

#include <chrono>
#include <vector>


namespace drp::packet::search {


/**
 * Represent a discovery request.
 * Sent by someone to get information about other available machine in the network.
 */
class SearchPacketData {
public:
    [[nodiscard]] std::vector<std::uint8_t> serialize() const;
    static SearchPacketData deserialize(std::vector<std::uint8_t>& data);

    std::chrono::time_point<std::chrono::system_clock> timestamp;  /// timestamp when the search request was sent
};


}