OpticalDetector.cc revision 10447
1 2#include "model/optical_graph/OpticalDetector.h" 3#include "model/optical_graph/OpticalReceiver.h" 4 5namespace DSENT 6{ 7 OpticalDetector::OpticalDetector(const String& instance_name_, OpticalModel* model_, const WavelengthGroup& wavelengths_, OpticalReceiver* receiver_) 8 : OpticalNode(OpticalNode::DETECTOR, instance_name_, model_, wavelengths_), m_receiver_(receiver_), m_responsivity_(0) 9 { 10 m_sensitivity_ = 0.0; 11 } 12 13 OpticalDetector::~OpticalDetector() 14 { 15 16 } 17 18 void OpticalDetector::setResponsivity(double responsivity_) 19 { 20 m_responsivity_ = responsivity_; 21 return; 22 } 23 24 double OpticalDetector::getSensitivity(double ER_dB_) const 25 { 26 // Get responsivity (in Amps) of the receiver, divide by responsivity to get sensitivity in Watts 27 return m_receiver_->getSensitivity(ER_dB_) / m_responsivity_; 28 } 29 30} // namespace DSENT 31 32 33