1#ifndef __FIBER_BUNDLE_STORAGETRANSFORMATIONS_HPP
2#define __FIBER_BUNDLE_STORAGETRANSFORMATIONS_HPP
4#include <memcore/Interface.hpp>
5#include <memcore/typemap.hpp>
39 const std::string& theFieldName,
42 const std::string& theGridname,
58 const std::string& theFieldName,
61 const std::string& theGridname,
65 virtual void doneRead(
70 int NumberOfAvailableFragments,
71 int CurrentFragmentNumber);
87 int CompressViaLZ4Filter = -1;
92 int GzipCompressionLevel = -1;
95 bool DoScaling =
false;
97 int zstdCompressionLevel = -1;
98 int zstdDictionary = -1;
104 bool EnableShuffleFilter =
false;
109 int HDF5_CustomFilter = 0;
113 bool useWindowsNativeVFDforHDF5 =
true;
143 int Power10ScaleFactor = 0;
149 virtual bool SkipStorage(
double time,
const string&gridname,
152 const string&RepresenterName,
154 const string&FieldName,
168 bool doEnableWriteSinglePrecisionForCoordinates =
false,
169 doEnableWriteSinglePrecisionForVectors =
false,
170 doEnableWriteSinglePrecisionForBivectors =
false;
179 void enable(
bool toWhat =
true)
181 doEnableWriteSinglePrecisionForCoordinates =
182 doEnableWriteSinglePrecisionForVectors =
183 doEnableWriteSinglePrecisionForBivectors =
toWhat;
197 enum class SzipCoding
221 SzipCoding SzipCodingMethod = SzipCoding::None;
240 unsigned int szip_pixels_per_block = 16;
302 Shuffle ShuffleMode = NoShuffle;
307 int CompressionLevel = 0;
319 bool ComputeRangeAttributeOnWriting =
false;
341 unsigned data_precision;
353 enum AutoSettingStrategy
361 bool doEnableWriteSinglePrecision =
false,
362 doEnableNumericalShift =
false;
364 void setAutomaticStrategy(AutoSettingStrategy StrategyMode = BestForReading);
369 FilterSettings(AutoSettingStrategy StrategyMode)
371 setAutomaticStrategy(StrategyMode);
375 string human_readable_description()
const;
382 FilterSettings::AutoSettingStrategy StrategyMode = FilterSettings::Uncompressed;
387 const string gridname;
390 const string RepresenterName;
392 const string FieldName;
407 virtual FilterSettings getFilterSettings(
double time,
const string&gridname,
410 const string&RepresenterName,
412 const string&FieldName,
420 bool StoreFragmentsSeparately =
false;
421 bool StoreFieldsSeparately =
false;
422 bool StoreGridsSeparately =
false;
441 bool trulyDeleteFileContents =
false;
463 virtual bool isSaveableTime(
double T)
const;
495 int ELINK_CACHESIZE = 128*1024;
503 int FileSpaceStrategyThreshold = 4096;
513 int sieve_buf_size = 0;
518 int MDC_initial_size = 32*1024,
519 MDC_max_size = 64*1024,
530 const string&RepresenterName,
531 const string&FieldName )
const;
533 virtual string getExternalLocationPrefix(
double time,
const string&gridname,
535 const string&RepresenterName,
536 const string&FieldName )
const;
544 virtual void setFieldPacking(
double time,
const string&gridname,
547 const string&RepresenterName,
549 const string&FieldName,
554 bool EnableExternalFileReference =
false;
567 bool AllowExternalLinkingOnWritingOutOfRAMData =
false;
582 virtual bool isSaveableField(
const FieldID&
id,
const Field&F,
586 const std::string &theGridname,
589 virtual bool isSaveableFragment(
595 const std::string &theGridname,
607 const std::string &theGridname,
basic_string< char > string
Base class for multidimensional arrays that employ deferred storage, i.e.
Definition CreativeArrayBase.hpp:75
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
A class describing an n-dimensional space at runtime.
Definition field/DynamicSize.hpp:29
Identifier for Fields within a Grid.
Definition FieldID.hpp:53
A Field is a collection of CreativeArrayBase reference pointers which are accessed via FragmentID obj...
Definition Field.hpp:245
Identifier for Skeletons within a Grid.
Definition SkeletonID.hpp:24
Given a fragmented field of curvilinear coordinates, (3D array of coordinates), build a uniform Grid ...
Definition FAQ.dox:2
Definition StorageTransformations.hpp:385