Récuperer le temps de simulation

Fermé
wella_salwa Messages postés 15 Date d'inscription lundi 31 octobre 2022 Statut Membre Dernière intervention 30 mars 2024 - Modifié le 18 nov. 2022 à 12:57
mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 - 18 nov. 2022 à 13:00

Bonjour,

Je suis en train d'utiliser cet exemple de ndnSim.

Je veux récupérer le temps de simulation et l'affecter à une variable, la diviser par deux, utiliser une boucle for dans la méthode OnData

void
ConsumerPcon::OnData(shared_ptr<const Data> data)
{
  Consumer::OnData(data);
  uint64_t sequenceNum = data->getName().get(-1).toSequenceNumber();
  // Set highest received Data to sequence number
  if (m_highData < sequenceNum) {
    m_highData = sequenceNum;
  }

... et finalement afficher les résultats avec le temps de simulation.

J'ai utilisé Simulator::Now() , mais ça ne marche pas.

Comment dois-je procéder ?

Merci  

1 réponse

mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 7 748
18 nov. 2022 à 13:00

Bonjour,

Merci de soigner l'orthographe.

Si tu veux récupérer l'instant courant de la simulation, Simulator::Now() est pourtant ce que tu veux. 

ns3::Time time = ns3::Simulator::now()
std::cout << time << std::endl;

D'après ce lien, l'opérateur / est implémenté, donc tu peux diviser la valeur assignée à time par 2 si tu le souhaites.

Et pour le reste je n'ai pas compris ta question.

Bonne chance

0