wireless_comm_signal.cpp

00001 
00002 #include "wireless_comm_signal.hpp"
00003 #include "sim_time.hpp"
00004 
00005 WirelessCommSignal::WirelessCommSignal(const Location& location,
00006    double dbStrength, double wavelength, 
00007    double transmitterGain, PacketPtr packet)
00008    : Signal(location, dbStrength), m_packetPtr(packet), 
00009    m_wavelength(wavelength), m_transmitterGain(transmitterGain),
00010    m_channelId(m_DEFAULT_CHANNEL_ID)
00011 {
00012    assert(m_wavelength > 0.0);
00013    assert(m_transmitterGain > 0.0);
00014    assert(m_packetPtr.get() != 0);
00015 }
00016 
00017 WirelessCommSignal::WirelessCommSignal(const WirelessCommSignal& rhs)
00018    : Signal(rhs), m_wavelength(rhs.m_wavelength), 
00019    m_transmitterGain(rhs.m_transmitterGain), 
00020    m_channelId(rhs.m_channelId)
00021 {
00022    m_packetPtr = Packet::create(*rhs.m_packetPtr);
00023 }
00024 
00025 SignalPtr WirelessCommSignal::clone() const
00026 {
00027    SignalPtr p(new WirelessCommSignal(*this));
00028    return p;
00029 }
00030 
00031 SimTime WirelessCommSignal::getDuration() const
00032 {
00033    ConstPacketPtr packet = getPacketPtr();
00034    assert(packet.get() != 0);
00035    return packet->getDuration();
00036 }
00037 
00038 

Generated on Tue Dec 12 17:04:39 2006 for rfidsim by  doxygen 1.4.7