summaryrefslogtreecommitdiff
path: root/ext/dsent/model/optical_graph/OpticalLaser.h
blob: 911517e1d4fdd7397281dfbbe199f94bec4d8f4f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
#define __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__

#include "model/optical_graph/OpticalNode.h"
#include "util/CommonType.h"

namespace DSENT
{
    class OpticalLaser : public OpticalNode
    {
        public:
            OpticalLaser(const String& instance_name_, OpticalModel* model_, const WavelengthGroup& wavelengths_);
            ~OpticalLaser();

        public:
            void setEfficiency(double efficiency_);
            double getEfficiency() const;
        
        private:
            // Disable copy constructor
            OpticalLaser(const OpticalLaser& node_);            
        
        private:
            // Laser efficiency
            double m_efficiency_;
        
    };
    
} // namespace DSENT

#endif // __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__