DemuxTreeDeserializer.h revision 10447:a465576671d4
112855Sgabeblack@google.com#ifndef __DSENT_MODEL_ELECTRICAL_MULTIPHASEDESERIALIZER_H__
212855Sgabeblack@google.com#define __DSENT_MODEL_ELECTRICAL_MULTIPHASEDESERIALIZER_H__
312855Sgabeblack@google.com
412855Sgabeblack@google.com#include "util/CommonType.h"
512855Sgabeblack@google.com#include "model/ElectricalModel.h"
612855Sgabeblack@google.com
712855Sgabeblack@google.comnamespace DSENT
812855Sgabeblack@google.com{
912855Sgabeblack@google.com    class DemuxTreeDeserializer : public ElectricalModel
1012855Sgabeblack@google.com    {
1112855Sgabeblack@google.com        public:
1212855Sgabeblack@google.com            DemuxTreeDeserializer(const String& instance_name_, const TechModel* tech_model_);
1312855Sgabeblack@google.com            virtual ~DemuxTreeDeserializer();
1412855Sgabeblack@google.com
1512855Sgabeblack@google.com        public:
1612855Sgabeblack@google.com            // Set a list of properties' name needed to construct model
1712855Sgabeblack@google.com            void initParameters();
1812855Sgabeblack@google.com            // Set a list of properties' name needed to construct model
1912855Sgabeblack@google.com            void initProperties();
2012855Sgabeblack@google.com
2112855Sgabeblack@google.com            // Clone and return a new instance
2212855Sgabeblack@google.com            virtual DemuxTreeDeserializer* clone() const;
2312855Sgabeblack@google.com
2412855Sgabeblack@google.com        protected:
2512855Sgabeblack@google.com            // Build the model
2612855Sgabeblack@google.com            virtual void constructModel();
2712855Sgabeblack@google.com            virtual void propagateTransitionInfo();
2812855Sgabeblack@google.com
2912855Sgabeblack@google.com    }; // class DemuxTreeDeserializer
3012855Sgabeblack@google.com} // namespace DSENT
3112855Sgabeblack@google.com
3212855Sgabeblack@google.com#endif // __DSENT_MODEL_ELECTRICAL_MULTIPHASEDESERIALIZER_H__
3312855Sgabeblack@google.com
3412855Sgabeblack@google.com