SZLFEPartitionedZoneWriter.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #pragma once
  2. #include "ThirdPartyHeadersBegin.h"
  3. #include <map>
  4. #include <vector>
  5. #include <boost/unordered_set.hpp>
  6. #include "ThirdPartyHeadersEnd.h"
  7. #include "SZLFEPartitionedZoneHeaderWriter.h"
  8. #include "ZoneWriterAbstract.h"
  9. #include "PartitionTecUtilDecorator.h"
  10. namespace tecplot
  11. {
  12. namespace ___3933
  13. {
  14. class ___1350;
  15. class ___1352;
  16. class ___2724;
  17. class NodeToElemMap;
  18. class ZoneInfoCache;
  19. class ItemSetIterator;
  20. class SZLFEPartitionedZoneWriter : public ___4709
  21. {
  22. public:
  23. SZLFEPartitionedZoneWriter(ItemSetIterator &varIter, ___4636 zone, ___4636 ___341, std::vector<___372> const &___4564, ___372 ___4499, ___37 &___36, ZoneInfoCache &zoneInfoCache);
  24. virtual ~SZLFEPartitionedZoneWriter();
  25. protected:
  26. struct NeighborCellSubzoneInfo
  27. {
  28. std::vector<___2718> m_nodes;
  29. std::vector<___2718> m_neighborNodes;
  30. std::vector<boost::unordered_set<___2090::SubzoneOffset_t>> m_cellSubzones;
  31. std::vector<std::vector<___2479>> m_varMinMaxes;
  32. };
  33. typedef std::map<___2090::___2980, NeighborCellSubzoneInfo> NeighborCellSubzoneInfoMap;
  34. void gatherNeighborCellSubzoneInfo(NeighborCellSubzoneInfoMap &neighborCellSubzoneInfoMap, ___2090::___2980 ___2977, ___4352 ___2843, ___2724 &___2723, std::vector<___1352> const &fieldDatas, ___1350 const &zoneInfo);
  35. virtual uint64_t zoneConnectivityFileSize(bool ___2002);
  36. virtual uint64_t zoneDataFileSize(bool ___2002);
  37. virtual uint64_t zoneHeaderFileSize(bool ___2002);
  38. virtual ___372 writeZoneConnectivity(FileWriterInterface &szpltFile);
  39. virtual ___372 writeZoneData(FileWriterInterface &szpltFile);
  40. virtual ___372 writeZoneHeader(FileWriterInterface &szpltFile);
  41. SZLFEPartitionedZoneHeaderWriter m_headerWriter;
  42. ZoneInfoCache &___2680;
  43. PartitionTecUtilDecorator m_partitionTecUtil;
  44. ___2240<int32_t> m_partitionFileNums;
  45. UInt64Array m_partitionHeaderFilePositions;
  46. UInt32Array m_partitionNumCells;
  47. UInt32Array m_partitionNumNodes;
  48. VarZoneMinMaxArray m_varPartitionMinMaxes;
  49. std::map<___4636, boost::shared_ptr<___4709>> m_partitionWriters;
  50. private:
  51. void exchangeGhostInfo(std::vector<boost::shared_ptr<___1350>> &partitionInfos);
  52. void createPartitionWriters();
  53. };
  54. }
  55. }