27 #ifndef RPS_SAMPLER_ELEM_H
28 #define RPS_SAMPLER_ELEM_H
void RPS_sampler_elem_set(struct RPS_SamplerElement *sampler_elem, struct GNUNET_CRYPTO_AuthKey auth_key)
Set the min-wise independent function of the given sampler element.
void RPS_sampler_elem_reinit(struct RPS_SamplerElement *sampler_elem)
Reinitialise a previously initialised sampler element.
void RPS_sampler_elem_destroy(struct RPS_SamplerElement *sampler_elem)
Destroy a sampler element.
RPS_SamplerEmpty
Used to indicate whether a sampler element is empty.
void RPS_sampler_elem_next(struct RPS_SamplerElement *sampler_elem, const struct GNUNET_PeerIdentity *new_ID)
Update a sampler element with a PeerID.
struct RPS_SamplerElement * RPS_sampler_elem_create(void)
Create a sampler element and initialise it.
type for (message) authentication keys
The identity of the host (wraps the signing key of the peer).
Time for absolute times used by GNUnet, in microseconds.
A sampler element sampling one PeerID at a time.
char * file_name
The file name this sampler element should log to.
struct GNUNET_TIME_Absolute last_client_request
Time of last request.
struct GNUNET_TIME_Absolute birth
'Birth'
struct GNUNET_CRYPTO_AuthKey auth_key
Min-wise linear permutation used by this sampler.
uint32_t num_peers
How many times a PeerID was put in this sampler.
struct GNUNET_HashCode peer_id_hash
The according hash value of this PeerID.
uint32_t num_change
How many times this sampler changed the peer_id.
struct GNUNET_PeerIdentity peer_id
The PeerID this sampler currently samples.
enum RPS_SamplerEmpty is_empty
Flag that indicates that we are not holding a valid PeerID right now.