source: DCWoRMS/trunk/src/schedframe/resources/computing/Core.java @ 756

Revision 756, 1.7 KB checked in by wojtekp, 12 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package schedframe.resources.computing;
2
3import schedframe.resources.computing.description.ComputingResourceDescription;
4import schedframe.resources.computing.profiles.energy.EnergyExtension;
5import schedframe.resources.computing.profiles.energy.power.PowerInterfaceFactory;
6import schedframe.resources.computing.profiles.energy.power.ui.PowerInterface;
7import schedframe.resources.units.CpuSpeed;
8import schedframe.resources.units.StandardResourceUnitName;
9
10public class Core extends ComputingResource{
11       
12
13        public Core (ComputingResourceDescription resDesc) {
14                super(resDesc);
15                //PowerInterface pi = PowerInterfaceFactory.createPowerInterface(this, resDesc.getPowerProfile());
16                //accept(new EnergyExtension(pi, resDesc.getPowerProfile()));   
17        }
18
19        public Processor getProcessor(){
20                return (Processor)parent;
21        }
22       
23        public int getMIPS(){
24                int mips;
25                try {
26                        mips = getSpeedUnit().getAmount();
27                } catch (NoSuchFieldException e) {
28                        mips = 1;
29                }
30                return mips;
31        }
32       
33        public int getAvailableMIPS(){
34                int mips;
35                try {
36                        mips = getSpeedUnit().getFreeAmount();
37                } catch (NoSuchFieldException e) {
38                        mips = 1;
39                }
40                return mips;
41        }
42
43        private CpuSpeed getSpeedUnit() throws NoSuchFieldException{
44                return (CpuSpeed) resourceCharacteristic.getResourceUnit(StandardResourceUnitName.CPUSPEED);
45        }
46
47        public void initCharacteristics(ComputingResourceDescription resDesc){
48                super.initCharacteristics(resDesc);
49                try{
50                        resourceCharacteristic.addResourceUnit(new CpuSpeed(name, Integer.valueOf(resDesc.getCompResourceParameterValue("speed")) * 1, 0));
51                } catch(Exception e){
52                        resourceCharacteristic.addResourceUnit(new CpuSpeed(name,  1, 0));
53                }
54        }
55
56        /*private void accept(EnergyExtension e){
57                extensionList.add(e);
58                e.setResource(this);
59        }*/
60}
61
Note: See TracBrowser for help on using the repository browser.