|
FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
|
Classes | |
| struct | FilterContext |
| struct | FilterSettings |
| struct | HDF5_Tuning |
| Tuning parameters related to HDF5 files. More... | |
| class | IOPerformance |
| struct | PrecisionTransformation |
Public Member Functions | |
| virtual bool | SkipStorage (double time, const string &gridname, const MemCore::WeakPtr< Fiber::Grid > &myGrid, const SkeletonID &Sid, const string &RepresenterName, const Field &F, const string &FieldName, Fiber::CreativeArrayBase &theCreator, const MemCore::RefPtr< Fiber::FragmentID > &fID) const |
| Specify nothing should be stored that is related to this setting. | |
| virtual FilterSettings | getFilterSettings (double time, const string &gridname, const MemCore::WeakPtr< Fiber::Grid > &myGrid, const SkeletonID &Sid, const string &RepresenterName, const Field &F, const string &FieldName, Fiber::CreativeArrayBase &theCreator, const MemCore::RefPtr< Fiber::FragmentID > &fID, const MemCore::RefPtr< MemBase > &Mb) const |
| StorageTransformations (bool AutomaticSetup=false) | |
| void | autoSetup () |
| virtual bool | isSaveableTime (double T) const |
| Allows a child class to determine which time steps, i.e. | |
| virtual std::pair< string, string > | getExternalLocation (double time, const string &gridname, const SkeletonID &Sid, const string &RepresenterName, const string &FieldName) const |
| virtual string | getExternalLocationPrefix (double time, const string &gridname, const SkeletonID &Sid, const string &RepresenterName, const string &FieldName) const |
| virtual void | setFieldPacking (double time, const string &gridname, const MemCore::WeakPtr< Fiber::Grid > &myGrid, const SkeletonID &Sid, const string &RepresenterName, const Field &F, const string &FieldName, Fiber::CreativeArrayBase &theCreator, const MemCore::RefPtr< Fiber::FragmentID > &fID) const |
| Callback function to possible define bit packing on a Creator, which is done by simply doing addInterface( new Packing() ) whereas Packing is an appropriate structure from field/Packing with parameters suitable for the given Creator. | |
| virtual string | getExternalFileReference (const string &MainFile, const string &FragmentFile) |
| If a data fragment resides in another file than the currently written main file this function computes the file name used for linking that external file, if EnableExternalFileReference is enabled. | |
| virtual std::string | getExternalLinkFilename (const std::string &link_containing_file_name, const std::string &external_target_file_name) const |
| How to compute the filename that shall be used for an external link, based on the file name containing the link and the file name of the object that will be referenced. | |
| virtual DynamicSize | computeChunkSize (const DynamicSize &FragmentSize, size_t TypeSize, string &StorageInfo) |
| virtual bool | isSaveableField (const FieldID &id, const Field &F, const WeakPtr< Fiber::Grid > &theGrid, const std::string &theRepresenterName, double theTime, const std::string &theGridname, const Fiber::SkeletonID &theSkeletonID) |
| virtual bool | isSaveableFragment (const RefPtr< FragmentID > &fid, const RefPtr< CreativeArrayBase > &cab, const FieldID &id, const Field &F, const WeakPtr< Fiber::Grid > &theGrid, const std::string &theRepresenterName, double theTime, const std::string &theGridname, const Fiber::SkeletonID &theSkeletonID) |
| virtual void | isSaved (const RefPtr< CreativeArrayBase > &cab, const RefPtr< FragmentID > &fid, const FieldID &id, const Field &F, const WeakPtr< Fiber::Grid > &theGrid, const std::string &theRepresenterName, double theTime, const std::string &theGridname, const Fiber::SkeletonID &theSkeletonID) |
| A callback function that is called once a Creator has been stored. | |
Public Member Functions inherited from MemCore::Interface< StorageTransformations > | |
| const type_info & | getInterfaceDomain () const |
Public Member Functions inherited from MemCore::InterfaceBase | |
| virtual bool | apply (Intercube &I, const RefPtr< InterfaceIterationParameter > &) |
| virtual bool | apply_const (const Intercube &I, const RefPtr< InterfaceIterationParameter > &) |
Public Member Functions inherited from MemCore::ReferenceBase< InterfaceBase > | |
| auto | getObjectCountID () const noexcept |
| bool | isIdentical (const WeakPtr< Object, Object > &PossibleSelf) const noexcept |
| void | mkAutoDestructive () |
| refcount_t | refcount () const noexcept |
| ReferenceBase (Object *that) noexcept | |
| const auto & | self () const |
| refcount_t | wrefcount () const noexcept |
Public Attributes | |
| RefPtr< IOPerformance > | myIOPerformance |
| int | CompressViaLZ4Filter = -1 |
| Use LZ4 compression. | |
| int | GzipCompressionLevel = -1 |
| Use GZIP for compression if positive. | |
| bool | DoScaling = false |
| apply scaling | |
| int | zstdCompressionLevel = -1 |
| int | zstdDictionary = -1 |
| bool | EnableShuffleFilter = false |
| https://support.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetShuffle | |
| uint32_t | ScaleFactor = 0 |
| int | HDF5_CustomFilter = 0 |
| std::vector< unsigned int > | HDF5FilterParameters |
| bool | useWindowsNativeVFDforHDF5 = true |
| int | Power10ScaleFactor = 0 |
| member variables to influence the input output of a f5 file useage: | |
| FilterSettings::AutoSettingStrategy | StrategyMode = FilterSettings::Uncompressed |
| A default setting for the return value of getFilterSettings() . | |
| PrecisionTransformation | defaultPrecisionTransformation |
| Setting for the default value of getFilterSettings, and overriden function may or may not use this. | |
| bool | StoreFragmentsSeparately = false |
| if field is fragmented every fragment will be exported individually | |
| bool | StoreFieldsSeparately = false |
| bool | StoreGridsSeparately = false |
| bool | trulyDeleteFileContents = false |
| A setting that affects particularly HDF5 files that are synchronized with a Bundle in memory ("bound"). | |
| std::set< RefPtr< FieldID > > | SaveableFields |
| Do only for certain field names. | |
| std::set< RefPtr< GridID > > | SaveableGrids |
| Do only for certain grid names. | |
| struct Fiber::StorageTransformations::HDF5_Tuning | HDF5 |
| Data member for HDF5 tuning. | |
| bool | EnableExternalFileReference = false |
| bool | AllowExternalLinkingOnWritingOutOfRAMData = false |
Additional Inherited Members | |
Public Types inherited from MemCore::Interface< StorageTransformations > | |
| typedef Domain | InterfaceDomain_t |
Public Types inherited from MemCore::ReferenceBase< InterfaceBase > | |
| typedef Object | reference_domain_t |
| typedef WeakPtr< Object, Object > | SelfPtr_t |
Protected Member Functions inherited from MemCore::ReferenceBase< InterfaceBase > | |
| virtual void | extremeUnction () |
| ReferenceBase & | operator= (const ReferenceBase &R) |
| void | suicide () |
|
virtual |
If a data fragment resides in another file than the currently written main file this function computes the file name used for linking that external file, if EnableExternalFileReference is enabled.
By default, it merely returns the FragmentFile. A derived class may do something more complex and compute relative paths etc.
|
virtual |
How to compute the filename that shall be used for an external link, based on the file name containing the link and the file name of the object that will be referenced.
By default, the reference will be a relative path name.
Allows a child class to determine which time steps, i.e.
members of the 1-dimensional parameter space in general, may be saved. By default, returns true for all times.
| int Fiber::StorageTransformations::Power10ScaleFactor = 0 |
member variables to influence the input output of a f5 file useage:
#Step 1 RefPtr<StorageTransformations> ST = new StorageTransformations(); ST->DoScaling = true;
#Step 2 BP.save("MyTiff.tif",NullPtr(), ST);
#Step 3 RefPtr<StorageTransformations> ST = interface_cast<StorageTransformations>(*S);
if( ST->DoScaling ) ..... If DoScaling is activated, then this integer will specify the scaling factor for the HDF5 scale/offset filter.
The offset will be computed automatically by HDF5, only the scale factor in powers of 10 needs to be specified. For instance, a number of 2 will round all floating point values to two digits after the comma.
A setting that affects particularly HDF5 files that are synchronized with a Bundle in memory ("bound").
If data are deleted in memory (removeField()...), then they are only renamed in the file if this setting is false. HDF5 files have troubles reclaiming space for deleted data, so file contents usually grow anyway when deleting data. This way data are still accessible, though invisible, on subsequent file reads. If data should be really deleted, i.e. made inaccessible even by HDF5 access methods, set this flag to true. It may or may not help to keep file sizes smaller. If files are used with frequent deletion operations, then copying the entire file after processing is needed anyway to clean up space and to achieve the minimal possible file size.