FountainWireProt.h File Reference

Definition and implementation of SSSWireProtConnectionPolicy, FountainMessagePtrSendPolicy, ConstParseMsgPtrReceivePolicy, LookupHostname, NoLookupHostname, FountainWireProtImpl, and FountainWireProt classes. More...

#include "define.h"
#include "FountainMessage.h"
#include "Enforce.h"
#include "LokiInclude.h"
#include <bamboo/WireProt.h>
#include <bamboo/SSSXML.h>
#include <bamboo/qLog.h>
#include <cstddef>
#include <vector>
#include <sstream>

Go to the source code of this file.

Classes

class  SSSWireProtConnectionPolicy
 Implements the FountainWireProt Connection Policy. More...
struct  FountainMessagePtrSendPolicy
 Implements the FountainWireProt Send Policy. More...
struct  ConstParseMsgPtrReceivePolicy
 Implements the FountainWireProt Receive Policy. More...
struct  LookupHostname< ConnectionPolicy >
 Implements the FountainWireProt ConnectionPolicy. More...
struct  NoLookupHostname< ConnectionPolicy >
 Implements the FountainWireProt ConnectionPolicy. More...
class  FountainWireProtImpl< ConnectionPolicy, SendPolicy, ReceivePolicy, HostnamePolicy >
 Host class for FountainWireProt policy classes. More...
class  FountainWireProt
 Encapsulates the FountainWireProtImpl host class. More...

Typedefs

typedef Loki::SmartPtr< FountainWireProt,
Loki::RefCounted, Loki::DisallowConversion,
Loki::RejectNull > 
FountainWireProtPtr
 Shorthand for a FountainWireProt pointer

This object uses the following policy classes:

  • RefCounted ownership policy so this object has copy semantics
  • DissallowConversion conversion policy to prevent implicit conversions to the pointee type
  • RejectNull checking policy here to throw a std::runtime_error exception for NULL dereferences.


Detailed Description

Definition and implementation of SSSWireProtConnectionPolicy, FountainMessagePtrSendPolicy, ConstParseMsgPtrReceivePolicy, LookupHostname, NoLookupHostname, FountainWireProtImpl, and FountainWireProt classes.

This file defines the policy-based FountainWireProt host class. It uses four orthogonal policies to describe its behavior:

Note that most everything in this class is hidden from outside users in an anonymous namespace. The FountainWireProt class is the only class defined outside the anonymous namespace.


Generated on Wed Mar 8 14:43:31 2006 for Fountain by  doxygen 1.4.6