IxiStorage interface

Unit: XIStorage

Declaration:

IxiStorage = interface(IInterface)
 ['{B884C79B-8730-40A0-B81E-790953D1B296}']
  function  GetInteger(Key: PChar; aDefault: Integer): Integer;
  procedure SetInteger(Key: PChar; aValue: Integer);
  function  GetFloat(Key: PChar; aDefault: Double): Double;
  procedure SetFloat(Key: PChar; aValue: Double);
  function  GetString(Key: PChar; aDefault: string): string;
  procedure SetString(Key: PChar; aValue: string);
  function  GetBoolean(Key: PChar; aDefault: Boolean): Boolean;
  procedure SetBoolean(Key: PChar; aValue: Boolean);
  function  GetDateTime(Key: PChar; aDefault: TDateTime): TDateTime;
  procedure SetDateTime(Key: PChar; aValue: TDateTime);
  // these are for App-DLL pchar exchange
  function  GetPChar(Key: PChar; const aBuffer: PChar; const aLen: Integer;
        const aDefault: PChar; const aDefaultLen: Integer): Integer;
  procedure SetPChar(Key: PChar; const aBuffer: PChar; const aLen: Integer);
 end;

A data exchange interface used for reading/writing data values from/to a control nodes structure. This interface allows reading/writing data from/to virtually any data source. XI library contains several classes that implement IxiStorage: TxiMemoryStorage, TxiSetupStorage and TxiDBStorage.

All methods of the IxiStorage interface is pretty self-explanatory, except GetPChar. This method is used for receiving a PChar value from storage. The result value is the length of the resulting string that was actually put into aBuffer. If aBuffer = nil, the result of the function should be the number of bytes required to store the string.

 

The CHM file was converted to HTML by chm2web software.