Last change
on this file since 12060 was 12060, checked in by hock@…, 12 years ago |
Reintegrate branch: 20130111-hock-message_classes
improvements:
- new message classes (reboost, zero-copy)
- "fast path" for direct links (skip overlay layer)
- link-properties accessible from the application
- SystemQueue can call boost::bind functions
- protlib compatibility removed (32bit overhead saved in every message)
- addressing2
- AddressDiscovery discoveres only addresses on which we're actually listening
- ariba serialization usage reduced (sill used in OverlayMsg)
- Node::connect, easier and cleaner interface to start-up ariba from the application
- ariba configs via JSON, XML, etc (boost::property_tree)
- keep-alive overhead greatly reduced
- (relayed) overlay links can actually be closed now
- lost messages are detected in most cases
- notification to the application when link is transformed into direct-link
- overlay routing: send message to second best hop if it would be dropped otherwise
- SequenceNumbers (only mechanisms, so for: upward compatibility)
- various small fixes
regressions:
- bluetooth is not yet working again
- bootstrap modules deactivated
- liblog4xx is not working (use cout-logging)
This patch brings great performance and stability improvements at cost of backward compatibility.
Also bluetooth and the bootstrap modules have not been ported to the new interfaces, yet.
|
File size:
714 bytes
|
Rev | Line | |
---|
| 1 | #ifndef PINGPONGMESSAGES_H_
|
---|
| 2 | #define PINGPONGMESSAGES_H_
|
---|
| 3 |
|
---|
| 4 | #include <string>
|
---|
| 5 | #include "ariba/utility/messages.h"
|
---|
| 6 | #include "ariba/utility/serialization.h"
|
---|
| 7 | #include "ariba/utility/misc/Helper.h"
|
---|
| 8 |
|
---|
| 9 | using std::string;
|
---|
| 10 | using ariba::utility::Message;
|
---|
| 11 |
|
---|
| 12 | namespace ariba {
|
---|
| 13 | namespace application {
|
---|
| 14 | namespace pingpong {
|
---|
| 15 |
|
---|
| 16 | using_serialization;
|
---|
| 17 |
|
---|
| 18 | class PingPongMessage : public Message {
|
---|
| 19 | VSERIALIZEABLE;
|
---|
| 20 | public:
|
---|
| 21 | PingPongMessage();
|
---|
| 22 | PingPongMessage(uint8_t _id);
|
---|
| 23 | virtual ~PingPongMessage();
|
---|
| 24 |
|
---|
| 25 | string info();
|
---|
| 26 | uint8_t getid();
|
---|
| 27 |
|
---|
| 28 | private:
|
---|
| 29 | uint8_t id;
|
---|
| 30 | };
|
---|
| 31 |
|
---|
| 32 | }}} // namespace ariba, appplication , pingpong
|
---|
| 33 |
|
---|
| 34 | sznBeginDefault( ariba::application ::pingpong::PingPongMessage, X ) {
|
---|
| 35 | X && id;
|
---|
| 36 | } sznEnd();
|
---|
| 37 |
|
---|
| 38 | #endif /* PINGPONGMESSAGES_H_ */
|
---|
Note:
See
TracBrowser
for help on using the repository browser.