User Manual, Developers Guide and API Documentation

HasDownPort.hpp

Go to the documentation of this file.
00001 /******************************************************************************
00002  * WNS (Wireless Network Simulator)                                           *
00003  * __________________________________________________________________________ *
00004  *                                                                            *
00005  * Copyright (C) 2004-2006                                                    *
00006  * Chair of Communication Networks (ComNets)                                  *
00007  * Kopernikusstr. 16, D-52074 Aachen, Germany                                 *
00008  * phone: ++49-241-80-27910 (phone), fax: ++49-241-80-22242                   *
00009  * email: wns@comnets.rwth-aachen.de                                          *
00010  * www: http://wns.comnets.rwth-aachen.de                                     *
00011  ******************************************************************************/
00012 
00013 #ifndef WNS_LDK_HASDOWNPORT_HPP
00014 #define WNS_LDK_HASDOWNPORT_HPP
00015 
00016 #include <WNS/ldk/HasConnector.hpp>
00017 #include <WNS/ldk/GetHasConnector.hpp>
00018 #include <WNS/ldk/HasReceptorReceptacle.hpp>
00019 #include <WNS/ldk/HasDelivererReceptacle.hpp>
00020 #include <WNS/ldk/SinglePort.hpp>
00021 
00022 namespace wns { namespace ldk {
00023 
00024         namespace hasconnector
00025         {
00026             typedef SingleConnector DefaultConnectorStrategy;
00027         }
00028 
00029         template <typename CLASS,
00030                   typename PORTID = Port<SinglePort>,
00031                   typename CONNECTORTYPE = hasconnector::DefaultConnectorStrategy>
00032         class HasDownPort
00033             : public GetHasConnector<typename PORTID::PortType>,
00034               public HasReceptorReceptacle<CLASS, typename PORTID::PortType>,
00035               public HasDelivererReceptacle<CLASS, typename PORTID::PortType>
00036         {
00037         public:
00038             HasDownPort(CLASS* fu):
00039                 GetHasConnector<typename PORTID::PortType>(),
00040                 HasReceptorReceptacle<CLASS, typename PORTID::PortType>(fu),
00041                 HasDelivererReceptacle<CLASS, typename PORTID::PortType>(fu),
00042                 connector_(fu)
00043             {
00044                 setHasConnector(&connector_);
00045             }
00046 
00047             virtual
00048             ~HasDownPort()
00049             {}
00050 
00051         private:
00052             HasConnector<CONNECTORTYPE, typename PORTID::PortType> connector_;
00053         };
00054 
00055 
00056         template <typename CLASS,
00057                   typename CONNECTORTYPE>
00058         class HasDownPort<CLASS, Port<SinglePort>, CONNECTORTYPE>
00059         {
00060         public:
00061             HasDownPort(CLASS*)
00062             {}
00063         };
00064 
00065     } //ldk
00066 } //wns
00067 
00068 #endif // NOT defined WNS_LDK_HASDOWNPORT

Generated on Thu May 24 03:31:41 2012 for openWNS by  doxygen 1.5.5