Delphi-Quellcode:
type
IReadOnlyData = interface
['{7F08C18E-0E6A-40F1-9DD9-AFDDA473FB8B}']
function GetActualValue(const p_Component: Byte): double;
function GetCurrentActual(): IActualValue;
function GetDefaultBehaviourMode(): String;
property DefaultBehaviourMode: String read GetDefaultBehaviourMode;
property CurrentActual: IActualValue read GetCurrentActual;
property ActualValue[const p_Component: Byte]: double read GetActualValue;
IData = interface( IReadOnlyData )
['{E9154DD9-A28E-4703-9DD8-5181A27869E2}']
procedure SetActualValue(const p_Component: Byte; const p_Value : double);
procedure SetCurrentActual(const p_Value: IActualValue);
procedure SetDefaultBehaviourMode(const p_Value: String);
property DefaultBehaviourMode: String read GetDefaultBehaviourMode write SetDefaultBehaviourMode;
property CurrentActual: IActualValue read GetCurrentActual write SetCurrentActual;
property ActualValue[const p_Component: Byte]: double read GetActualValue write SetActualValue;
end;
Wäre das noch eine Alternative, mit Ableitung der Interfaces ?
Sonst ist das IData nur um Schreiben, das wäre nicht so ideal, allerdings sind abgeleitete interfaces auch nicht so toll.