#include <vos/corelibs/vos/localsite.hh>
Inheritance diagram for VOS::LocalSite:
This acts as the communication point between your application and other VOS applications, managing the delivery of incoming messages as well as servicing certain types of requests about your local Vobjects. All Vobjects are associated with some site.
Definition at line 49 of file localsite.hh.
|
Timer callback type for a global C function. Register the callback using addCallback. Definition at line 102 of file localsite.hh. |
|
constructor
|
|
destructor
|
|
Register a simple global function as a timer callback.
|
|
Register a periodic or timed callback listener. Callbacks are checked each time flushIncomingBuffers is called. |
|
|
|
Add a notification event to be called during flushIncomingBuffers(). A notification event is called once and then destroyed. Implements VOS::Site. Referenced by VOS::RemoteSite::addNotification(). |
|
|
|
Check if any messages in the schedule have "site" as a source site. Mainly used when a site disconnects and its pending messages need to be flushed... Referenced by VOS::RemoteSite::excise(), and VOS::RemoteStreamSite::runScript(). |
|
Create a new metaobject with one type, and cast it to that type.
Definition at line 256 of file localsite.hh. |
|
Create a new local metaobject, with the supplied access control (ar defoult site AC if 0).
|
|
Create a new local metaobject, with the supplied access control (ar defoult site AC if 0).
|
|
Same as the other createMetaObject method, but takes a deque of type strings rather than a variable list of strings.
Implements VOS::Site. |
|
Use 0 to terminate the list of type strings.
Implements VOS::Site. |
|
Run pending callbacks.
|
|
Use this site to extend a LocalMetaObject with for a new type.
|
|
Flush any incoming buffers (eg read any data waiting in sockets).
Implements VOS::Site. Implemented in VOS::LocalSocketSite. Referenced by VOS::AsyncConnect::connect(), VOS::RemoteSite::flushIncomingBuffers(), and VOS::RemoteStreamSite::runScript(). |
|
Execute any pending notification events.
Implements VOS::Site. Referenced by VOS::RemoteSite::flushNotifications(). |
|
Maps a received anti-spoof ID to the one sent to that site.
Definition at line 297 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Get the site this object resides on.
Reimplemented from VOS::LocalMetaObject. Definition at line 204 of file localsite.hh. |
|
Get the select wait time.
Referenced by VOS::AsyncConnect::connect(), and VOS::RemoteStreamSite::runScript(). |
|
Insert a child at some position with a new object. If the position is positive, the object is inserted such that it now occupies that position, and all objects starting from the previous occupant of that position onward are moved up one. If the position in negative, the object is similarly inserted so that it now occupies that position. For example, position -1 will append the object to the end of the list, position -2 will insert the object in the second-to-last position, etc. See setChild() for more information on positions.
Reimplemented from VOS::LocalMetaObject. |
|
Always true.
Implements VOS::Site. Definition at line 200 of file localsite.hh. |
|
Calling this will cause flushNotifications() to do nothing (and hence no notifications will be processed) until unlockNotificationFlush is called.
Implements VOS::Site. Referenced by VOS::RemoteSite::lockNotificationFlush(). |
|
|
|
Remove a callback. (see addCallback) |
|
Remove a callback. (see addCallback) |
|
Remove the child at some position. See setChild() for more information on positions.
Reimplemented from VOS::LocalMetaObject. |
|
|
|
|
|
Remove the peering relationship with a remote site.
Referenced by VOS::RemoteSite::excise(), and VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Execute the current schedule.
Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
|
|
Schedule a message block for delivery. Special message types like include will be processed.
Referenced by VOS::RemoteStreamSite::flushIncomingBuffers(), and VOS::RemoteSocketSite::flushIncomingBuffers(). |
|
Sends a block of messages to the object. This may trigger immediate processing of the message if the object is local.
Reimplemented from VOS::LocalMetaObject. |
|
Sends a message to the object. This may trigger immediate processing of the message if the object is local.
Reimplemented from VOS::LocalMetaObject. Reimplemented in VOS::LocalSocketSite. Referenced by VOS::RemoteStreamSite::runScript(). |
|
Maps a received anti-spoof ID to the one sent to that site.
Definition at line 294 of file localsite.hh. |
|
Replace a child at some position with a new object.
Reimplemented from VOS::LocalMetaObject. |
|
Set the hostname we will prefer to use.
Referenced by VOS::AsyncConnect::operator()(). |
|
When select() is called to test file descriptors, this sets maximum amount of time to wait before returning if there is no data available. This primarily applies to LocalSite::flushIncomingBuffers().
Referenced by VOS::AsyncConnect::connect(), and VOS::RemoteStreamSite::runScript(). |
|
Set the base URL ("vop://host:port") that this site will use.
Implements VOS::Site. |
|
Any messages belonging to site "was" will be reassigned to site "now". This only affects the source site field of the message object. |
|
Allow notifcations to be processed again.
Implements VOS::Site. Referenced by VOS::RemoteSite::unlockNotificationFlush(). |
|
|
|
Reimplemented in VOS::LocalSocketSite. |
|
Definition at line 131 of file localsite.hh. |
|
Definition at line 125 of file localsite.hh. |
|
Definition at line 123 of file localsite.hh. |
|
Definition at line 121 of file localsite.hh. |
|
Definition at line 124 of file localsite.hh. |
|
Definition at line 122 of file localsite.hh. |
|
Definition at line 64 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 90 of file localsite.hh. |
|
Definition at line 145 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 128 of file localsite.hh. |
|
Definition at line 129 of file localsite.hh. |
|
List of remote sites we are peers with.
Definition at line 86 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 83 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 81 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
The following three data structures are used to buffer changes to peerSites when we have an active iterator using peerSites. This is to avoid invalidating the iterator (ye gods that was an obnoxious bug to track down.) The alternative would have to be to make a complete copy of the peerSites deque every time we want to copy it (ewww...)
Definition at line 79 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 80 of file localsite.hh. Referenced by VOS::LocalSocketSite::flushIncomingBuffers(). |
|
Definition at line 143 of file localsite.hh. |
|
Definition at line 142 of file localsite.hh. |
|
Definition at line 95 of file localsite.hh. |
|
Definition at line 91 of file localsite.hh. |
|
Definition at line 93 of file localsite.hh. |
|
The current message schedule.
Definition at line 89 of file localsite.hh. |