Entity: predicate and function

raise_event(A, B, C)
Result is raise_event(A, B, C)

The communication between the client and the server is normally initiated by the client because he is the master and the server is the slave. The client (the master) calls methods from the server and gets and sets its properties. Anyway, sometimes it is convenient the communication to be initiated by the server. This can be done by the server events. Of course, the server can send such events but there is no guarantee that the client is listening for them. If the client proceeds an event he can return a result to the server. In this way, the server will send information to the client and will receive some information back from him.

The only event which SP server can send to its client is crated by the predicate raise_event. This event looks in the following way: event(A, B, C). Here event is the name of the event and A, B, C are its three arguments. The number of arguments is exactly three. If you need more than three arguments you have to find some way around.

The arguments A, B, C of the event are of type VARIANT so you can use them for different types of data including string, integer and float. It is the same with the Result.

If you want to know the names of the connection points Strawberry Prolog Server has only one connection point and its name is "_IStrawberrySvrEvents".

See also:
Strawberry Prolog as OLE server

 OLE / Servers