Lagrangian Liquid Simulation
Master Thesis project on simulation of liquids using Lagrangian approach and SPH
include/CacheItem.h
Go to the documentation of this file.
00001 #ifndef CACHEITEM_H
00002 #define CACHEITEM_H
00003 
00004 #include "ngl/Obj.h"
00005 
00006 #include "vector"
00007 
00009 enum CacheItemType
00010 {
00011     FLUID_CACHE,            
00012     BOUNDARY_CACHE,         
00013     SPHERE_CACHE,           
00014     CAPSULE_CACHE           
00015 };
00016 
00017 
00027 
00028 
00029 class CacheItem
00030 {
00031 public:
00037     CacheItem
00038     (
00039         const std::vector<std::vector<ngl::Vector> > _positionList,
00040         const std::vector<std::string> _nameList,
00041         const int _frameNumber,
00042         const CacheItemType _cacheItemType
00043     );
00044 
00047     CacheItem(const CacheItem& _cacheItem);
00048 
00050     inline int getFrameNumber() const { return m_frameNumber; }
00051 
00053     inline std::vector<std::vector<ngl::Vector> > getPositionList() const { return m_positionList; }
00054 
00056     inline std::vector<std::string> getNameList() const { return m_nameList; }
00057 
00059     inline CacheItemType getCacheItemType() const { return m_cacheItemType; }
00060 
00061 private:
00063     CacheItemType m_cacheItemType;
00064 
00066     std::vector<std::vector<ngl::Vector> > m_positionList;
00067 
00069     std::vector<std::string> m_nameList;
00070 
00072     int m_frameNumber;
00073 
00074 };
00075 
00076 #endif // CACHEITEM_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator