Starting work on drawing program layers
This commit is contained in:
parent
c2e85e8a62
commit
a29c5dc926
14 changed files with 334 additions and 138 deletions
|
|
@ -11,8 +11,8 @@ CanvasComponentAllocator::CanvasComponentAllocator(CanvasComponentType typeToAll
|
|||
comp = std::unique_ptr<CanvasComponent>(CanvasComponent::allocate_comp(typeToAllocate));
|
||||
}
|
||||
|
||||
void CanvasComponentAllocator::register_class(World& world, NetworkingObjects::NetObjManager& objMan) {
|
||||
world.delayedUpdateObjectManager.register_class<CanvasComponentAllocator>(objMan, NetworkingObjects::DelayUpdateSerializedClassManager::CustomConstructors<CanvasComponentAllocator>{
|
||||
void CanvasComponentAllocator::register_class(World& world) {
|
||||
world.delayedUpdateObjectManager.register_class<CanvasComponentAllocator>(world.netObjMan, NetworkingObjects::DelayUpdateSerializedClassManager::CustomConstructors<CanvasComponentAllocator>{
|
||||
.writeConstructor = [](const CanvasComponentAllocator& o, cereal::PortableBinaryOutputArchive& a) {
|
||||
a(o.comp->get_type());
|
||||
a(*o.comp);
|
||||
|
|
|
|||
|
|
@ -12,5 +12,5 @@ class CanvasComponentAllocator {
|
|||
CanvasComponentAllocator();
|
||||
CanvasComponentAllocator(CanvasComponentType typeToAllocate);
|
||||
std::unique_ptr<CanvasComponent> comp;
|
||||
static void register_class(World& world, NetworkingObjects::NetObjManager& objMan);
|
||||
static void register_class(World& world);
|
||||
};
|
||||
|
|
|
|||
|
|
@ -41,10 +41,6 @@ void CanvasComponentContainer::read_constructor_func(const NetworkingObjects::Ne
|
|||
o->compAllocator->comp->compContainer = o.get();
|
||||
}
|
||||
|
||||
void CanvasComponentContainer::delay_post_assignment_update(DrawingProgram& drawP, CanvasComponent& comp) {
|
||||
comp.compContainer->commit_update(drawP);
|
||||
}
|
||||
|
||||
void CanvasComponentContainer::save_file(cereal::PortableBinaryOutputArchive& a) const {
|
||||
a(coords);
|
||||
get_comp().save_file(a);
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ class DrawingProgramCacheBVHNode;
|
|||
class CanvasComponentContainer {
|
||||
public:
|
||||
typedef NetworkingObjects::NetObjOrderedList<CanvasComponentContainer> NetList;
|
||||
typedef NetworkingObjects::NetObjOwnerPtr<NetworkingObjects::NetObjOrderedList<CanvasComponentContainer>> NetListOwnerPtr;
|
||||
typedef NetworkingObjects::NetObjOwnerPtr<NetList> NetListOwnerPtr;
|
||||
typedef NetworkingObjects::NetObjOrderedListObjectInfo<CanvasComponentContainer> ObjInfo;
|
||||
typedef std::shared_ptr<ObjInfo> ObjInfoSharedPtr;
|
||||
typedef std::weak_ptr<ObjInfo> ObjInfoWeakPtr;
|
||||
|
|
@ -28,7 +28,6 @@ class CanvasComponentContainer {
|
|||
CanvasComponentContainer();
|
||||
CanvasComponentContainer(NetworkingObjects::NetObjManager& objMan, CanvasComponentType type);
|
||||
static void register_class(NetworkingObjects::NetObjManager& t);
|
||||
static void delay_post_assignment_update(DrawingProgram& drawP, CanvasComponent& comp);
|
||||
void save_file(cereal::PortableBinaryOutputArchive& a) const;
|
||||
void load_file(cereal::PortableBinaryInputArchive& a, VersionNumber version);
|
||||
CanvasComponent& get_comp() const;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue