00001
#if !defined(__EQUIPMENTCOMPOSITE_HPP)
00002
#define __EQUIPMENTCOMPOSITE_HPP
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
#if !defined(__COMMON_HPP)
00026
#include <Common.hpp>
00027
#endif
00028
00029
#if !defined(__COMPOSITEEXCEPTION_HPP)
00030
#include <CompositeException.hpp>
00031
#endif
00032
00033
#if !defined(__EQUIPMENT_HPP)
00034
#include <Equipment.hpp>
00035
#endif
00036
00037
00039
00040 DECLARE_CLASS(
EquipmentComposite );
00041
00050 class EquipmentComposite :
public Equipment
00051 {
00052
public:
00053
00054
00055
00056
00058
00059
EquipmentComposite(
NameCref );
00060
00062
00063
EquipmentComposite(
EquipmentCompositeCref );
00064
00066
00067
virtual ~EquipmentComposite(
void );
00068
00069
00070
00071
00073
00074
bool operator==(
EquipmentCompositeCref )
const;
00075
00076
00077
00078
00080
00081
virtual Watt
getPower(
void ) ;
00082
00083
00084
00085
00086
00087
virtual void addComponent(
EquipmentPtr )
throw(CORELINUX(InvalidCompositeException));
00088
00089
virtual void removeComponent(
EquipmentPtr )
throw(CORELINUX(InvalidCompositeException));
00090
00091
00092
00093
00094
00096
00097
virtual CORELINUX(Iterator)<
EquipmentPtr>*
createIterator(
void )
throw(CORELINUX(InvalidCompositeException));
00098
00100
00101
virtual void destroyIterator( CORELINUX(Iterator)<
EquipmentPtr>* )
throw(CORELINUX(InvalidCompositeException));
00102
00103
protected:
00104
00105
00106
00107
00109
00110
EquipmentComposite(
void )
00111
throw(CORELINUX(CompositeException));
00112
00113
00114
00115
00116
00118
00119
EquipmentCompositeRef operator=(
EquipmentCompositeCref )
00120
throw(CORELINUX(CompositeException));
00121
00122
00123
private:
00124
00125 };
00126
00127
#endif // if !defined(__EQUIPMENTCOMPOSITE_HPP);
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137