Einzelnen Beitrag anzeigen

gibb

Registriert seit: 12. Sep 2007
Ort: Bern
178 Beiträge
 
Delphi 2006 Architect
 
#16

AW: TObjectList problem...

  Alt 24. Dez 2010, 09:53
hab die zeile gefunden:

Delphi-Quellcode:
function TSensorFactory.GetNewSpeedForAFan(AFan: TFanOverlayObject):Integer;
var
  i: Integer;
  TempSens, MasterTemp: TTempOverlayObject;
  NewSpeed, currentspeed: Integer;
  HighestSpeed: Integer;
begin
  Result:= -1;
  HighestSpeed:= -1;
  Currentspeed:= AFan.NewSpeed;
  if AFan.Enabled then begin
    // Alle sensoren werden durchgesteppt
    for i:= 0 to FTempOvList.Count-1 do begin
      TempSens:= FTempOvList[i] as TTempOverlayObject ;
      //Wenn der Sensor aktiv ist wird geschaut ob dieser Fan überhaupt für diesen sonsor verantwortlich ist
      If TempSens.Enabled then begin
        NewSpeed:= CalculateNewSpeed(Tempsens, Afan);
        if newSpeed > HighestSpeed then begin
          HighestSpeed:= NewSpeed;
          MasterTemp:= TempSens;
        end;
      end;
    end;
      //über oder unter der hysterese else in der hysterese
    if (MasterTemp.Temp >= (MasterTemp.OldTemp + MasterTemp.Offset) ) or
       (MasterTemp.Temp <= (MasterTemp.OldTemp - MasterTemp.Offset)) or
       (HighestSpeed = 100) then begin
     // MasterTemp.OldTemp:= MasterTemp.Temp; <--- wennn ich diese zeile auskomentiere dann geht es :-/
      Result:= HighestSpeed;
    end else
      Result:= currentspeed;
ich versteh nur nicht was ihn daran stört :-/

edit:

Noch die Passende klasse dazu:
Delphi-Quellcode:
  TTempOverlayObject = Class(Tobject)
  public
    TempArrayPos: Integer; //Position im Rückgabearray
    RealName : String; //Namen im System
    overlayName: String; //Anzeigenamen
    LowestTemp: integer; //Konfigurierte min Temp
    HighestTemp: integer; //Konfigurierte höchsttemperatur
    Temp: Integer; //Aktuelle Temperatur
    OldTemp:Integer; //Letzte Temperatur vor der Temp änderung (für hysterese wichtig)
    Offset: integer; //Offset für die Hysterese
    Enabled: Boolean; //Aktiv/Inaktiv
    IdleTemp: Integer;
    LoadTemp: Integer;
    ResponsibleFans: TObjectlist; // Fans die Zuständig sind für diesen Sensor.
    constructor create;
    destructor destroy(); override;
  End;

Geändert von gibb (24. Dez 2010 um 09:58 Uhr)
  Mit Zitat antworten Zitat