Shared/ProjectInterface.h project/SetupVision.cc project/mirage.plist project/kinect.plist /usr/local/Tekkotsu/local/DeviceDrivers/KinectDriver.* /usr/local/Tekkotsu/local/DeviceDrivers/MirageDriver.* Mirage Camera Pipeline MirageDriver.cc - openConnection: Sets parameters of the camera such as height, width, field of view UIController.cc - Calls getIncomingClient() in EnvSceneryListener.plistCollectionEntryAdded Client.h - Calls Client::init() Client.cc - getIncomingClient: creates a new client when called with a new client id - init: Reads in the XML file which has the parameters for the camera (its an array of CameraInfo objects which are just dictionary entries) - Calls setParent on the Camera which in turn calls setupCamera - renderCameras: goes through each client and calls eacg CameraInfo's renderImage function CameraInfo.cc - setupCamera: creates the ogre camera - setupTexture: important - renderImage: Actually renders the image - fireImageRendered: Informs all of the listeners that a new frame has been rendered? CommThread.cc - Updates the ImageBuffer