You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.5 KiB
55 lines
1.5 KiB
#pragma once
|
|
|
|
#include "ofMain.h"
|
|
#include "SurfaceManager.h"
|
|
#include "SurfaceManagerGui.h"
|
|
#include "MediaServer.h"
|
|
#include "FboSource.h"
|
|
#include "BaseCmd.h"
|
|
#include "CmdManager.h"
|
|
#include "RmSurfaceCmd.h"
|
|
#include "Application.h"
|
|
#include "Info.h"
|
|
|
|
#define PIMAPPER_DEF_SURFACES_XML_FILE "defaultSurfaces.xml"
|
|
#define PIMAPPER_USER_SURFACES_XML_FILE "surfaces.xml"
|
|
|
|
namespace ofx {
|
|
namespace piMapper {
|
|
class Application;
|
|
}
|
|
}
|
|
|
|
class ofxPiMapper {
|
|
|
|
public:
|
|
ofxPiMapper();
|
|
|
|
void setup();
|
|
void draw();
|
|
|
|
void registerFboSource(ofx::piMapper::FboSource & fboSource);
|
|
bool loadXmlSettings(string fileName);
|
|
|
|
ofx::piMapper::CmdManager * getCmdManager();
|
|
ofx::piMapper::SurfaceManagerGui * getGui();
|
|
ofx::piMapper::SurfaceManager * getSurfaceManager();
|
|
ofx::piMapper::Info * getInfo();
|
|
|
|
// TODO: Redesign ofxPiMapper so that there is a separation between
|
|
// data structures like triangle and quad surfaces and their GUIs.
|
|
// Trianlge and quad surfaces should be still able to draw themselves
|
|
// by using their individual draw methods. The GUI layer would consume
|
|
// triangle and quad surface lists to construct interactive user
|
|
// interface on top of them.
|
|
|
|
private:
|
|
bool _setupComplete;
|
|
|
|
ofx::piMapper::CmdManager * _cmdManager;
|
|
ofx::piMapper::MediaServer * _mediaServer;
|
|
ofx::piMapper::SurfaceManager * _surfaceManager;
|
|
ofx::piMapper::SurfaceManagerGui * _gui;
|
|
ofx::piMapper::Application * _application;
|
|
ofx::piMapper::Info * _info;
|
|
};
|