#pragma once #include "ThirdPartyHeadersBegin.h" #include #include #include #include "ThirdPartyHeadersEnd.h" #include "AltTecUtil.h" #include "basicTypes.h" #include "IJK.h" namespace tecplot { namespace ___3933 { class FESubzonePartitionerInterface; class ___37; class PartitionTecUtilDecorator; class ___1881; class ___1350; class ItemSetIterator; class ZoneInfoCache { public: ZoneInfoCache(___37 *___36, ___1844 const &maxIJKSubzoneSize, ___2090::ItemOffset_t feSubzoneSize); boost::shared_ptr<___1881> getIJKZoneInfo(___4636 zone); boost::shared_ptr<___1881> getIJKZonePartitionInfo(___4636 zone, ___4636 ___2977); boost::shared_ptr<___1350> getFEZoneInfo(___4636 zone); boost::shared_ptr<___1350> getFEZonePartitionInfo(___4636 zone, ___4636 ___2977, PartitionTecUtilDecorator &partitionTecUtilDecorator); void remove(___4636 zone); void clear(); void replaceDataSource(___37 *___36); private: ___37 *___2337; ___1844 const m_maxIJKSubzoneSize; ___2090::ItemOffset_t const m_feSubzoneSize; boost::unordered_map<___4636, boost::shared_ptr<___1881>> m_ijkZoneInfos; boost::unordered_map<___4636, boost::unordered_map<___4636, boost::shared_ptr<___1881>>> m_ijkZonePartitionInfos; boost::unordered_map<___4636, boost::shared_ptr<___1350>> m_feZoneInfos; boost::unordered_map<___4636, boost::unordered_map<___4636, boost::shared_ptr<___1350>>> m_feZonePartitionInfos; template void storeForSharedZones(boost::unordered_map<___4636, boost::shared_ptr> &zoneInfos, boost::shared_ptr zoneInfo, ___4636 zone); template void storeForSharedPartitions(boost::unordered_map<___4636, boost::unordered_map<___4636, boost::shared_ptr>> &zoneInfos, boost::shared_ptr zoneInfo, ___4636 zone, ___4636 ___2977); }; } }