unit AllgLib;

interface

uses
  SysUtils, classes;

function CharToHex(PZeichen: Char): string;                            {wandelt ein Zeichen in einen Hex-String}
function StrToHex(PString, Separator: string; Bytes: integer): string; {wandelt einen String in einen formatierten Hex-String}
function GetMaxValFromStrList(PStrList:TStringList): double;           {extrahiert das Maximum einer Stringliste}

implementation


function StrToHex(PString, Separator: string; Bytes: integer): string;
var
  i,count : integer;
  erg, tmp_erg: string;
begin

  {Init}
  count := 0;

  for i := 1 to Length(PString) do
  begin
    tmp_erg := CharToHex(PString[i]);
    if tmp_erg = 'fail' then
      exit;
    if count = Bytes then
    begin
      erg   := erg + Separator;
      count := 0;
    end;
    Inc(count);
    erg := erg + tmp_erg;
  end;
  result := erg;
end;

function CharToHex(PZeichen: Char): string;
begin
  Result := IntToHex(Ord(PZeichen), 2);
end;


function GetMaxValFromStrList(PStrList:TStringList): double;
var
  i:integer;
  TmpMax:double;
begin

  {Init}
  TmpMax := 0;

  for i:=0 to PStrList.Count-1 do
  begin
    try
      if StrToFloat(PStrList.strings[i])>TmpMax then
        TmpMax := StrToFloat(PStrList.strings[i]);
    except
      result := -1;
    end;
  end;
  result := TmpMax;
end;

end.
