1 #ifndef EmbreeTargetManager_h 2 #define EmbreeTargetManager_h 58 void free(
const QString &shapeFile);
62 bool inCache(
const QString &shapeFile)
const;
72 static void DieAtExit();
81 struct EmbreeTargetShapeContainer {
85 EmbreeTargetShapeContainer()
88 m_referenceCount(0) { }
96 EmbreeTargetShapeContainer(
const QString &fullPath,
98 : m_fullFilePath(fullPath),
99 m_targetShape(targetShape),
100 m_referenceCount(0) { }
102 QString m_fullFilePath;
105 int m_referenceCount;
109 QString fullFilePath(
const QString &filePath)
const;
110 void removeTargetShape(
const QString &shapeFile);
void free(const QString &shapeFile)
Notify the manager that an EmbreeTargetShape is no longer in use.
Definition: EmbreeTargetManager.cpp:190
Class for managing the construction and destruction of EmbreeTargetShapes.
Definition: EmbreeTargetManager.h:53
bool inCache(const QString &shapeFile) const
Check if there is an already created EmbreeTargetShape for a file.
Definition: EmbreeTargetManager.cpp:283
static EmbreeTargetManager * getInstance()
Retrieve reference to Singleton instance of this object.
Definition: EmbreeTargetManager.cpp:94
Embree Target Shape for planetary bodies.
Definition: EmbreeTargetShape.h:155
int maxCacheSize() const
Return the maximum number of stored EmbreeTargetShapes.
Definition: EmbreeTargetManager.cpp:260
int currentCacheSize() const
Return the number of currently stored EmbreeTargetShapes.
Definition: EmbreeTargetManager.cpp:250
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
void setMaxCacheSize(const int &numShapes)
Set the maximum number of stored EmbreeTargetShapes.
Definition: EmbreeTargetManager.cpp:273
EmbreeTargetShape * create(const QString &shapeFile)
Get a pointer to an EmbreeTargetShape containing the information from a shape file.
Definition: EmbreeTargetManager.cpp:146