LCOV - code coverage report
Current view: top level - engine/model - obj.h (source / functions) Hit Total Coverage
Test: Libprimis Test Coverage Lines: 0 2 0.0 %
Date: 2024-11-22 05:07:59 Functions: 0 1 0.0 %

          Line data    Source code
       1             : #ifndef OBJ_H_
       2             : #define OBJ_H_
       3             : 
       4             : struct obj;
       5             : 
       6             : struct obj final : vertloader<obj>
       7             : {
       8             :     obj(std::string name);
       9             : 
      10             :     static const char *formatname();
      11             :     static bool cananimate();
      12             :     bool flipy() const override final;
      13             :     int type() const override final;
      14             :     bool skeletal() const override final;
      15             : 
      16             :     struct objmeshgroup : vertmeshgroup
      17             :     {
      18             :         public:
      19             :             bool load(const char *filename, float smooth) override final;
      20             : 
      21             :         private:
      22             :             void parsevert(char *s, std::vector<vec> &out);
      23             :             void flushmesh(vertmesh *curmesh,
      24             :                            const std::vector<vert> &verts,
      25             :                            const std::vector<tcvert> &tcverts,
      26             :                            const std::vector<tri> &tris,
      27             :                            const std::vector<vec> &attrib,
      28             :                            float smooth);
      29             :     };
      30             : 
      31           0 :     vertmeshgroup *newmeshes() override final
      32             :     {
      33           0 :         return new objmeshgroup;
      34             :     }
      35             : 
      36             :     bool loaddefaultparts() override final;
      37             :     /* note about objcommands variable:
      38             :      *
      39             :      * this variable is never used anywhere at all in the codebase
      40             :      * it only exists to call its constructor which adds commands to the cubescript
      41             :      * ident hash table of the given template type (obj)
      42             :      */
      43             :     static vertcommands<obj> objcommands;
      44             : };
      45             : 
      46             : #endif
      47             : 

Generated by: LCOV version 1.14