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