LEFT | RIGHT |
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2013 Magister Solutions | 3 * Copyright (c) 2013 Magister Solutions |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
345 * \param state The new state. | 345 * \param state The new state. |
346 */ | 346 */ |
347 void SwitchToState (State_t state); | 347 void SwitchToState (State_t state); |
348 | 348 |
349 /// The current state of the client application. Begins with NOT_STARTED. | 349 /// The current state of the client application. Begins with NOT_STARTED. |
350 State_t m_state; | 350 State_t m_state; |
351 /// The socket for sending and receiving packets to/from the web server. | 351 /// The socket for sending and receiving packets to/from the web server. |
352 Ptr<Socket> m_socket; | 352 Ptr<Socket> m_socket; |
353 /// According to the content length specified by the ThreeGppHttpHeader. | 353 /// According to the content length specified by the ThreeGppHttpHeader. |
354 uint32_t m_objectBytesToBeReceived; | 354 uint32_t m_objectBytesToBeReceived; |
355 /// The packet constructed of one or more parts and containing single ThreeGpp
HttpHeader. | 355 /// The packet constructed of one or more parts with ThreeGppHttpHeader. |
356 Ptr<Packet> m_constructedPacket; | 356 Ptr<Packet> m_constructedPacket; |
357 /// The client time stamp of the ThreeGppHttpHeader from the last received pac
ket. | 357 /// The client time stamp of the ThreeGppHttpHeader from the last received pac
ket. |
358 Time m_objectClientTs; | 358 Time m_objectClientTs; |
359 /// The server time stamp of the ThreeGppHttpHeader from the last received pac
ket. | 359 /// The server time stamp of the ThreeGppHttpHeader from the last received pac
ket. |
360 Time m_objectServerTs; | 360 Time m_objectServerTs; |
361 /// Determined after parsing the main object. | 361 /// Determined after parsing the main object. |
362 uint32_t m_embeddedObjectsToBeRequested; | 362 uint32_t m_embeddedObjectsToBeRequested; |
363 | 363 |
364 // ATTRIBUTES | 364 // ATTRIBUTES |
365 | 365 |
366 /// The `Variables` attribute. A random number generator. | 366 /// The `Variables` attribute. |
367 Ptr<ThreeGppHttpVariables> m_httpVariables; | 367 Ptr<ThreeGppHttpVariables> m_httpVariables; |
368 /// The `RemoteServerAddress` attribute. The address of the web server. | 368 /// The `RemoteServerAddress` attribute. The address of the web server. |
369 Address m_remoteServerAddress; | 369 Address m_remoteServerAddress; |
370 /// The `RemoteServerPort` attribute. | 370 /// The `RemoteServerPort` attribute. |
371 uint16_t m_remoteServerPort; | 371 uint16_t m_remoteServerPort; |
372 | 372 |
373 // TRACE SOURCES | 373 // TRACE SOURCES |
374 | 374 |
375 /// The `ConnectionEstablished` trace source. | 375 /// The `ConnectionEstablished` trace source. |
376 ns3::TracedCallback<Ptr<const ThreeGppHttpClient> > m_connectionEstablishedTra
ce; | 376 ns3::TracedCallback<Ptr<const ThreeGppHttpClient> > m_connectionEstablishedTra
ce; |
377 /// The `ConnectionClosed` trace source. | 377 /// The `ConnectionClosed` trace source. |
378 ns3::TracedCallback<Ptr<const ThreeGppHttpClient> > m_connectionClosedTrace; | 378 ns3::TracedCallback<Ptr<const ThreeGppHttpClient> > m_connectionClosedTrace; |
| 379 /// The `Tx` trace source. |
| 380 ns3::TracedCallback<Ptr<const Packet> > m_txTrace; |
379 /// The `TxMainObjectRequest` trace source. | 381 /// The `TxMainObjectRequest` trace source. |
380 ns3::TracedCallback<Ptr<const Packet> > m_txMainObjectRequestTrace; | 382 ns3::TracedCallback<Ptr<const Packet> > m_txMainObjectRequestTrace; |
381 /// The `TxEmbeddedObjectRequest` trace source. | 383 /// The `TxEmbeddedObjectRequest` trace source. |
382 ns3::TracedCallback<Ptr<const Packet> > m_txEmbeddedObjectRequestTrace; | 384 ns3::TracedCallback<Ptr<const Packet> > m_txEmbeddedObjectRequestTrace; |
383 /// The `TxMainObjectPacket` trace source. | 385 /// The `TxMainObjectPacket` trace source. |
384 ns3::TracedCallback<Ptr<const Packet> > m_rxMainObjectPacketTrace; | 386 ns3::TracedCallback<Ptr<const Packet> > m_rxMainObjectPacketTrace; |
385 /// The `TxMainObject` trace source. | 387 /// The `TxMainObject` trace source. |
386 ns3::TracedCallback<Ptr<const ThreeGppHttpClient>, Ptr<const Packet> > m_rxMa
inObjectTrace; | 388 ns3::TracedCallback<Ptr<const ThreeGppHttpClient>, Ptr<const Packet> > m_rxMa
inObjectTrace; |
387 /// The `TxEmbeddedObjectPacket` trace source. | 389 /// The `TxEmbeddedObjectPacket` trace source. |
388 ns3::TracedCallback<Ptr<const Packet> > m_rxEmbeddedObjectPacketTrace; | 390 ns3::TracedCallback<Ptr<const Packet> > m_rxEmbeddedObjectPacketTrace; |
(...skipping 26 matching lines...) Expand all Loading... |
415 */ | 417 */ |
416 EventId m_eventParseMainObject; | 418 EventId m_eventParseMainObject; |
417 | 419 |
418 }; // end of `class ThreeGppHttpClient` | 420 }; // end of `class ThreeGppHttpClient` |
419 | 421 |
420 | 422 |
421 } // end of `namespace ns3` | 423 } // end of `namespace ns3` |
422 | 424 |
423 | 425 |
424 #endif /* THREE_GPP_HTTP_CLIENT_H */ | 426 #endif /* THREE_GPP_HTTP_CLIENT_H */ |
LEFT | RIGHT |