23.03.2011, 16:45
|
Специалист
|
|
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
|
|
Код:
// *********************************************************************//
// Interface: IS7ProSim
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {83CC0D81-FEDA-11D1-BE76-0060B06816CF}
// *********************************************************************//
IS7ProSim = interface(IDispatch)
['{83CC0D81-FEDA-11D1-BE76-0060B06816CF}']
procedure ReadOutputImage(StartIndex: Integer; ElementsToRead: Integer;
DataType: ImageDataTypeConstants; var pData: OleVariant); safecall;
procedure WriteInputImage(StartIndex: Integer; var pData: OleVariant); safecall;
procedure ReadOutputPoint(ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
procedure WriteInputPoint(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); safecall;
procedure ExecuteSingleScan; safecall;
procedure Connect; safecall;
procedure Disconnect; safecall;
procedure BeginScanNotify; safecall;
procedure EndScanNotify; safecall;
procedure ExecuteNmsScan(MsNumber: Integer); safecall;
procedure ExecuteNScans(NScanNumber: Integer); safecall;
function GetScanMode: ScanModeConstants; safecall;
procedure SetScanMode(newVal: ScanModeConstants); safecall;
procedure Pause; safecall;
procedure Continue; safecall;
function GetPauseState: PauseStateConstants; safecall;
procedure SavePLC(const FileName: WideString); safecall;
procedure HotStartWithSavedValues(val: Integer); safecall;
function GetState: WideString; safecall;
procedure SetState(const newVal: WideString); safecall;
procedure StartPLCSim(const plcFile: WideString); safecall;
procedure SetStartUpSwitch(postion: RestartSwitchPositionConstants); safecall;
function GetStartUpSwitch: RestartSwitchPositionConstants; safecall;
procedure ReadDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
procedure WriteDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer;
var pData: OleVariant); safecall;
procedure ReadFlagValue(ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); safecall;
procedure WriteFlagValue(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); safecall;
procedure ConnectExt(InstanceNumber: Integer); safecall;
procedure StartPLCSimExt(const plcFile: WideString); safecall;
end;
// *********************************************************************//
// DispIntf: IS7ProSimDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {83CC0D81-FEDA-11D1-BE76-0060B06816CF}
// *********************************************************************//
IS7ProSimDisp = dispinterface
['{83CC0D81-FEDA-11D1-BE76-0060B06816CF}']
procedure ReadOutputImage(StartIndex: Integer; ElementsToRead: Integer;
DataType: ImageDataTypeConstants; var pData: OleVariant); dispid 1;
procedure WriteInputImage(StartIndex: Integer; var pData: OleVariant); dispid 2;
procedure ReadOutputPoint(ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); dispid 3;
procedure WriteInputPoint(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); dispid 4;
procedure ExecuteSingleScan; dispid 5;
procedure Connect; dispid 6;
procedure Disconnect; dispid 7;
procedure BeginScanNotify; dispid 8;
procedure EndScanNotify; dispid 9;
procedure ExecuteNmsScan(MsNumber: Integer); dispid 10;
procedure ExecuteNScans(NScanNumber: Integer); dispid 11;
function GetScanMode: ScanModeConstants; dispid 12;
procedure SetScanMode(newVal: ScanModeConstants); dispid 13;
procedure Pause; dispid 14;
procedure Continue; dispid 15;
function GetPauseState: PauseStateConstants; dispid 16;
procedure SavePLC(const FileName: WideString); dispid 17;
procedure HotStartWithSavedValues(val: Integer); dispid 18;
function GetState: WideString; dispid 19;
procedure SetState(const newVal: WideString); dispid 20;
procedure StartPLCSim(const plcFile: WideString); dispid 21;
procedure SetStartUpSwitch(postion: RestartSwitchPositionConstants); dispid 22;
function GetStartUpSwitch: RestartSwitchPositionConstants; dispid 23;
procedure ReadDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); dispid 24;
procedure WriteDataBlockValue(BlockNum: Integer; ByteIndex: Integer; BitIndex: Integer;
var pData: OleVariant); dispid 25;
procedure ReadFlagValue(ByteIndex: Integer; BitIndex: Integer;
DataType: PointDataTypeConstants; var pData: OleVariant); dispid 26;
procedure WriteFlagValue(ByteIndex: Integer; BitIndex: Integer; var pData: OleVariant); dispid 27;
procedure ConnectExt(InstanceNumber: Integer); dispid 29;
procedure StartPLCSimExt(const plcFile: WideString); dispid 30;
end;
// *********************************************************************//
// The Class CoS7ProSim provides a Create and CreateRemote method to
// create instances of the default interface IS7ProSim exposed by
// the CoClass S7ProSim. The functions are intended to be used by
// clients wishing to automate the CoClass objects exposed by the
// server of this typelibrary.
// *********************************************************************//
CoS7ProSim = class
class function Create: IS7ProSim;
class function CreateRemote(const MachineName: string): IS7ProSim;
end;
TS7ProSimScanFinished = procedure(ASender: TObject; ScanInfo: OleVariant) of object;
TS7ProSimConnectionError = procedure(ASender: TObject; const ControlEngine: WideString;
Error: Integer) of object;
TS7ProSimPLCSimStateChanged = procedure(ASender: TObject; const NewState: WideString) of object;
TS7ProSimPauseStateChanged = procedure(ASender: TObject; const NewState: WideString) of object;
TS7ProSimScanModeChanged = procedure(ASender: TObject; const NewState: WideString) of object;
|