• Main Page
  • Related Pages
  • Classes
  • Files
  • File List
  • File Members

ocsLumpedLoss.hh

Go to the documentation of this file.
00001 // $Id: ocsLumpedLoss.hh,v 1.2 2006/05/11 23:44:58 zweck Exp $
00002 
00003 //###################################################################
00004 //
00005 //           Optical Communication Systems Simulator
00006 //
00007 //       Copyright (2001):
00008 //       Optical Fiber Communications Laboratory (OFCL)
00009 //       Computer Science & Electrical Engineering Department (CSEE)
00010 //       University of Maryland Baltimore County (UMBC)
00011 //
00012 //###################################################################
00013 
00014 #ifndef _OCS_LUMPED_LOSS_HH_
00015 #define _OCS_LUMPED_LOSS_HH_
00016 
00017 
00018 #include "ocsOptSignal.hh"
00019 #include "ocsReduLumpedLoss.hh"
00020 
00021 // Written by John Zweck Jan 5, 2001.
00022 
00023 // Sometimes the only thing you want to model about an optical device
00024 // is its loss. 
00025 // This class is used to model the loss of such optical devices 
00026  
00027 // It could be easily extended to model the loss of electrical devices
00028 // by adding another constructor which is passed a Photodetector
00029 // rather than an OptSignal.
00030 
00031 
00032 
00033 class LumpedLoss
00034 {
00035    public:
00036 
00037    LumpedLoss(double LossdB2, OptSignal *oOptSignal2);
00038    LumpedLoss(string InFileName, OptSignal *oOptSignal2);
00039    
00040    void InitLumpedLoss(double LossdB2, OptSignal *oOptSignal2);   
00041 
00042    void SwitchOptSignalData(OptSignal *oOptSignal2);
00043    void ApplyLumpedLoss();
00044    void SetLossdB(double LossdB2);
00045    double GetLossdB(void) {return LossdB;};   
00046    double GetLossLinear(void) {return LossLinear;};
00047 
00048    private:
00049    
00050    typeSimulation TypeSimulation;
00051    double LossdB;
00052    double LossLinear;
00053    double LossLinearSqrt;
00054    OptSignal * oOptSignal;
00055    fftMatrices sfftM;
00056    ReduLumpedLoss * oReduLumpedLoss;
00057 };
00058 
00059 
00060 
00061 #endif /* _OCS_LUMPED_LOSS_HH_ */

Generated on Fri Jul 2 2010 12:57:46 for OCS by  doxygen 1.7.1