OpticalLaser.h revision 10447
1#ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
2#define __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
3
4#include "model/optical_graph/OpticalNode.h"
5#include "util/CommonType.h"
6
7namespace DSENT
8{
9    class OpticalLaser : public OpticalNode
10    {
11        public:
12            OpticalLaser(const String& instance_name_, OpticalModel* model_, const WavelengthGroup& wavelengths_);
13            ~OpticalLaser();
14
15        public:
16            void setEfficiency(double efficiency_);
17            double getEfficiency() const;
18
19        private:
20            // Disable copy constructor
21            OpticalLaser(const OpticalLaser& node_);
22
23        private:
24            // Laser efficiency
25            double m_efficiency_;
26
27    };
28
29} // namespace DSENT
30
31#endif // __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
32
33