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.1 KiB
55 lines
1.1 KiB
#pragma once
|
|
|
|
#include "BaseSurface.h"
|
|
#include "TriangleSurface.h"
|
|
#include "QuadSurface.h"
|
|
#include "SurfaceType.h"
|
|
#include "MediaServer.h"
|
|
#include "BaseSource.h"
|
|
#include "SourceType.h"
|
|
#include "SurfaceStack.h"
|
|
#include "SurfaceFactory.h"
|
|
|
|
#include "ofEvents.h"
|
|
#include "ofxXmlSettings.h"
|
|
#include "SettingsLoader.h"
|
|
|
|
using namespace std;
|
|
|
|
namespace ofx {
|
|
namespace piMapper {
|
|
|
|
class SurfaceManager {
|
|
|
|
public:
|
|
SurfaceManager();
|
|
~SurfaceManager();
|
|
|
|
void draw();
|
|
|
|
void addSurface(BaseSurface * surface);
|
|
void removeSelectedSurface();
|
|
void removeSurface();
|
|
void deselectSurface();
|
|
void saveXmlSettings(string fileName);
|
|
void setMediaServer(MediaServer * newMediaServer);
|
|
void clear();
|
|
|
|
bool loadXmlSettings(string fileName);
|
|
|
|
BaseSurface * getSurface(int index);
|
|
BaseSurface * selectSurface(int index);
|
|
BaseSurface * selectSurface(BaseSurface * surface);
|
|
BaseSurface * getSelectedSurface();
|
|
|
|
int size();
|
|
|
|
private:
|
|
BaseSurface * selectedSurface;
|
|
ofxXmlSettings xmlSettings;
|
|
MediaServer * mediaServer;
|
|
SurfaceStack _surfaces;
|
|
};
|
|
|
|
} // namespace piMapper
|
|
} // namespace ofx
|