RTFX  0.3
Real time special effects collaborative visualization and production library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
RTFXServer.h File Reference
#include <algorithm>
#include <cstdlib>
#include <deque>
#include <iostream>
#include <list>
#include <set>
#include <boost/bind.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/enable_shared_from_this.hpp>
#include <boost/asio.hpp>
#include "RTFXDebug.h"
#include "RTFXPostOffice.h"
#include "RTFXSession.h"

Go to the source code of this file.

Classes

class  RTFX::RTFXServer
 The base server class for communication. More...
 

Namespaces

namespace  RTFX
 The namespace for the RTFX Library.
 

Typedefs

typedef boost::shared_ptr
< RTFXSession > 
RTFX::RTFXSessionPtr
 

Detailed Description

Author
Lesley Northam

October 28, 2011

How does the RTFXServer work?

  • There is one PostOffice on the server
  • Each Client (a Participant) creates a session and connects to the one PostOffice
  • Each Client "owns" certain data (read-write access), and can "peek" at other data
    • The ProviderParticipant would be, for example, the Houdini plugin
      • any time a parameter changes in the Houdini graph, the affected data is sent (via Parcel) to the appropriate Mailbox in the PostOffice
      • the parcel is decoded into a list of RTFXObjects, which are converted to RTFXNative units and updated in the Mailbox
        • some of the parameters of each object may be externally controlled,