Blender V4.3
abc_reader_nurbs.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4#pragma once
5
10#include "abc_reader_object.h"
11
12#include <Alembic/AbcGeom/INuPatch.h>
13
14namespace blender::io::alembic {
15
16class AbcNurbsReader final : public AbcObjectReader {
17 std::vector<std::pair<Alembic::AbcGeom::INuPatchSchema, Alembic::Abc::IObject>> m_schemas;
18
19 public:
20 AbcNurbsReader(const Alembic::Abc::IObject &object, ImportSettings &settings);
21
22 bool valid() const override;
23
24 bool accepts_object_type(const Alembic::AbcCoreAbstract::ObjectHeader &alembic_header,
25 const Object *const ob,
26 const char **r_err_str) const override;
27
28 void readObjectData(Main *bmain, const Alembic::Abc::ISampleSelector &sample_sel) override;
29
30 private:
31 void getNurbsPatches(const Alembic::Abc::IObject &obj);
32};
33
34} // namespace blender::io::alembic
void readObjectData(Main *bmain, const Alembic::Abc::ISampleSelector &sample_sel) override
AbcNurbsReader(const Alembic::Abc::IObject &object, ImportSettings &settings)
bool accepts_object_type(const Alembic::AbcCoreAbstract::ObjectHeader &alembic_header, const Object *const ob, const char **r_err_str) const override