Multiplexer.h revision 10447:a465576671d4
1#ifndef __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_H__
2#define __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_H__
3
4#include "util/CommonType.h"
5#include "model/ElectricalModel.h"
6
7namespace DSENT
8{
9    // A model of an N-to-1 multiplexer
10    class Multiplexer : public ElectricalModel
11    {
12        public:
13            Multiplexer(const String& instance_name_, const TechModel* tech_model_);
14            virtual ~Multiplexer();
15
16        public:
17            // Set a list of properties' name needed to construct model
18            void initParameters();
19            // Set a list of properties' name needed to construct model
20            void initProperties();
21
22            // Clone and return a new instance
23            virtual Multiplexer* clone() const;
24
25        protected:
26            // Build the model
27            virtual void constructModel();
28            virtual void propagateTransitionInfo();
29
30    }; // class Multiplexer
31} // namespace DSENT
32
33#endif // __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_H__
34
35