summaryrefslogtreecommitdiff
path: root/assetFactory/object.h
blob: 5cdb4da9eef9875dad513e5f482b1de824125fe7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include "persistence.h"
#include "shape.h"
#include "stdTypeDefs.h"
#include "use.h"

class Object : public StdTypeDefs<Object>, public Shape, public Persistence::Persistable {
public:
	Object() = default;
	Object(std::string i);

	CreatedFaces createMesh(ModelFactoryMesh & mesh, Scale3D lodf) const override;

	Use::Collection uses;
	std::string id;

private:
	friend Persistence::SelectionPtrBase<std::shared_ptr<Object>>;
	bool persist(Persistence::PersistenceStore & store) override;

	std::string
	getId() const override
	{
		return id;
	};
};