]>
Commit | Line | Data |
---|---|---|
f510b7b2 | 1 | \section{\class{wxServer}}\label{wxserver} |
47610ec2 JS |
2 | |
3 | A wxServer object represents the server part of a client-server | |
4 | DDE-like (Dynamic Data Exchange) conversation. The actual | |
5 | DDE-based implementation using wxDDEServer is available on Windows | |
6 | only, but a platform-independent, socket-based version of this | |
7 | API is available using wxTCPServer, which has the same API. | |
8 | ||
9 | To create a server which can communicate with a suitable client, | |
10 | you need to derive a class from wxConnection and another from | |
11 | wxServer. The custom wxConnection class will intercept | |
12 | communications in a `conversation' with a client, and the custom | |
39275175 | 13 | wxServer is required so that a user-overridden \helpref{wxServer::OnAcceptConnection}{wxserveronacceptconnection} |
47610ec2 JS |
14 | member can return a wxConnection of the required class, when a |
15 | connection is made. Look at the IPC sample and the \helpref{Interprocess communications overview}{ipcoverview} for | |
16 | an example of how to do this. | |
17 | ||
18 | \wxheading{Derived from} | |
19 | ||
20 | wxServerBase | |
21 | ||
22 | \wxheading{Include files} | |
23 | ||
24 | <wx/ipc.h> | |
25 | ||
26 | \wxheading{See also} | |
27 | ||
f510b7b2 | 28 | \helpref{wxClient}{wxclient}, |
47610ec2 JS |
29 | \helpref{wxConnection}{wxddeconnection}, \helpref{IPC |
30 | overview}{ipcoverview} | |
31 | ||
32 | \latexignore{\rtfignore{\wxheading{Members}}} | |
33 | ||
39275175 | 34 | \membersection{wxServer::wxServer}\label{wxserverctor} |
47610ec2 JS |
35 | |
36 | \func{}{wxServer}{\void} | |
37 | ||
38 | Constructs a server object. | |
39 | ||
39275175 | 40 | \membersection{wxServer::Create}\label{wxservercreate} |
47610ec2 JS |
41 | |
42 | \func{bool}{Create}{\param{const wxString\& }{service}} | |
43 | ||
44 | Registers the server using the given service name. Under Unix, | |
45 | the service name may be either an integer port identifier in | |
46 | which case an Internet domain socket will be used for the | |
47 | communications, or a valid file name (which shouldn't exist and | |
48 | will be deleted afterwards) in which case a Unix domain socket is | |
cc81d32f | 49 | created. false is returned if the call failed (for example, the |
47610ec2 JS |
50 | port number is already in use). |
51 | ||
39275175 | 52 | \membersection{wxServer::OnAcceptConnection}\label{wxserveronacceptconnection} |
47610ec2 JS |
53 | |
54 | \func{virtual wxConnectionBase *}{OnAcceptConnection}{\param{const wxString\& }{topic}} | |
55 | ||
56 | When a client calls {\bf MakeConnection}, the server receives the | |
57 | message and this member is called. The application should derive a | |
58 | member to intercept this message and return a connection object of | |
59 | either the standard wxConnection type, or (more likely) of a | |
60 | user-derived type. | |
61 | ||
62 | If the topic is {\bf STDIO}, the application may wish to refuse the | |
63 | connection. Under UNIX, when a server is created the | |
64 | OnAcceptConnection message is always sent for standard input and | |
65 | output, but in the context of DDE messages it doesn't make a lot | |
66 | of sense. | |
67 |