MCPcopy Create free account
hub / github.com/SaschaWillems/HowToVulkan / ObjReader

Class ObjReader

source/external/tinyobj/tiny_obj_loader.h:537–592  ·  view source on GitHub ↗

Wavefront .obj reader class(v2 API)

Source from the content-addressed store, hash-verified

535/// Wavefront .obj reader class(v2 API)
536///
537class ObjReader {
538 public:
539 ObjReader() : valid_(false) {}
540
541 ///
542 /// Load .obj and .mtl from a file.
543 ///
544 /// @param[in] filename wavefront .obj filename
545 /// @param[in] config Reader configuration
546 ///
547 bool ParseFromFile(const std::string &filename,
548 const ObjReaderConfig &config = ObjReaderConfig());
549
550 ///
551 /// Parse .obj from a text string.
552 /// Need to supply .mtl text string by `mtl_text`.
553 /// This function ignores `mtllib` line in .obj text.
554 ///
555 /// @param[in] obj_text wavefront .obj filename
556 /// @param[in] mtl_text wavefront .mtl filename
557 /// @param[in] config Reader configuration
558 ///
559 bool ParseFromString(const std::string &obj_text, const std::string &mtl_text,
560 const ObjReaderConfig &config = ObjReaderConfig());
561
562 ///
563 /// .obj was loaded or parsed correctly.
564 ///
565 bool Valid() const { return valid_; }
566
567 const attrib_t &GetAttrib() const { return attrib_; }
568
569 const std::vector<shape_t> &GetShapes() const { return shapes_; }
570
571 const std::vector<material_t> &GetMaterials() const { return materials_; }
572
573 ///
574 /// Warning message(may be filled after `Load` or `Parse`)
575 ///
576 const std::string &Warning() const { return warning_; }
577
578 ///
579 /// Error message(filled when `Load` or `Parse` failed)
580 ///
581 const std::string &Error() const { return error_; }
582
583 private:
584 bool valid_;
585
586 attrib_t attrib_;
587 std::vector<shape_t> shapes_;
588 std::vector<material_t> materials_;
589
590 std::string warning_;
591 std::string error_;
592};
593
594/// ==>>========= Legacy v1 API =============================================

Callers

nothing calls this directly

Calls 1

ObjReaderConfigClass · 0.85

Tested by

no test coverage detected