]> git.tdb.fi Git - libs/gltk.git/blobdiff - source/partcache.h
Make sure classes follow the rule of 0/3/5
[libs/gltk.git] / source / partcache.h
index 9dc71bf184c8652de6b5e4939a8bab9224a2f512..8099676f95d177ecc3855bf00006db2a3aa11263 100644 (file)
@@ -12,11 +12,13 @@ class Part;
 
 struct CachedPart
 {
-       const Part *part;
-       const GL::Texture2D *texture;
-       GL::Mesh *mesh;
+       const Part *part = nullptr;
+       const GL::Texture2D *texture = nullptr;
+       GL::Mesh *mesh = nullptr;
 
-       CachedPart();
+       CachedPart() = default;
+       CachedPart(CachedPart &&);
+       CachedPart &operator=(CachedPart &&);
        ~CachedPart();
 };
 
@@ -36,14 +38,12 @@ public:
        typedef std::list<CachedPart> PartList;
 
 private:
-       bool rebuilding;
+       bool rebuilding = false;
        PartList parts;
        PartList::iterator next;
        PartList::iterator current;
 
 public:
-       PartCache();
-
        void begin_rebuild();
        void insert_special(const Part &);
        GL::Mesh &create_mesh(const Part &, const GL::Texture2D &);