// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only // // W A R N I N G // ------------- // // This file is not part of the QtDataVisualization API. It exists purely as an // implementation detail. This header file may change from version to // version without notice, or even be removed. // // We mean it. #ifndef OBJECTHELPER_P_H #define OBJECTHELPER_P_H #include "datavisualizationglobal_p.h" #include "abstractobjecthelper_p.h" QT_BEGIN_NAMESPACE class Abstract3DRenderer; class ObjectHelper : public AbstractObjectHelper { private: ObjectHelper(const QString &objectFile); public: virtual ~ObjectHelper(); static void resetObjectHelper(const Abstract3DRenderer *cacheId, ObjectHelper *&obj, const QString &meshFile); static void releaseObjectHelper(const Abstract3DRenderer *cacheId, ObjectHelper *&obj); inline const QString &objectFile() { return m_objectFile; } inline const QList &indices() const { return m_indices; } inline const QList &indexedvertices() const { return m_indexedVertices; } inline const QList &indexedUVs() const { return m_indexedUVs; } inline const QList &indexedNormals() const { return m_indexedNormals; } private: static ObjectHelper *getObjectHelper(const Abstract3DRenderer *cacheId, const QString &objectFile); void load(); QString m_objectFile; QList m_indices; QList m_indexedVertices; QList m_indexedUVs; QList m_indexedNormals; }; QT_END_NAMESPACE #endif