MeVisLab Toolbox Reference
WEMPatchPersistence.h
Go to the documentation of this file.
1 /*************************************************************************************
2 **
3 ** Copyright 2015, MeVis Medical Solutions AG
4 **
5 ** The user may use this file in accordance with the license agreement provided with
6 ** the Software or, alternatively, in accordance with the terms contained in a
7 ** written agreement between the user and MeVis Medical Solutions AG.
8 **
9 ** For further information use the contact form at https://www.mevislab.de/contact
10 **
11 **************************************************************************************/
12 
13 #pragma once
14 
15 #include "MLWEMIncludes.h"
16 #include "WEMPersistenceHelper.h"
17 
18 ML_START_NAMESPACE
19 
21 
22 class WEMPatch;
23 class WEMPrimitiveValueList;
24 
26 
29 {
30 public:
32 
33  void saveTo(OutStreamWrapper& ostreamWrapper, const WEMPersistenceParameters& persistenceParameters, WEMProgressUpdater& progressUpdater);
34 
35  unsigned int loadFrom(FileMapWrapper& mapper, const WEMPersistenceParameters& persistenceParameters, const WEMReadParameters& readParameters, WEMProgressUpdater& progressUpdater);
36 
37 private:
38  WEMPatch* _patch;
39 
40  void writeNodesToStream(OutStreamWrapper& ostreamWrapper, const WEMPersistenceParameters& persistenceParameters, WEMProgressUpdater& progress);
41  void writeEdgesToStream(OutStreamWrapper& ostreamWrapper, const WEMPersistenceParameters& persistenceParameters, WEMProgressUpdater& progress);
42  void writeFacesToStream(OutStreamWrapper& ostreamWrapper, const WEMPersistenceParameters& persistenceParameters, WEMProgressUpdater& progress);
43  void writePVLsToStream(OutStreamWrapper& ostreamWrapper);
44 
45  void readNodesFromMap(FileMapWrapper& mapper, size_t numNodes, WEMPrimitiveValueList* pvl, const WEMPersistenceParameters& persistenceParameters, const WEMReadParameters& parameters, WEMProgressUpdater& progress);
46  void readEdgesFromMap(FileMapWrapper& mapper, size_t numEdges, const WEMPersistenceParameters& persistenceParameters, const WEMReadParameters& parameters, WEMProgressUpdater& progress);
47  void readFacesFromMap(FileMapWrapper& mapper, size_t numFaces, const WEMPersistenceParameters& persistenceParameters, const WEMReadParameters& parameters, WEMProgressUpdater& progress);
48  void readPVLsFromMap(FileMapWrapper& mapper, const WEMReadParameters& parameters);
49 };
50 
52 
53 ML_END_NAMESPACE
Wraps a FileMap so we can handle errors and exceptions more easily.
Class to save/load a WEMPatch.
void saveTo(OutStreamWrapper &ostreamWrapper, const WEMPersistenceParameters &persistenceParameters, WEMProgressUpdater &progressUpdater)
WEMPatchPersistence(WEMPatch *patch)
unsigned int loadFrom(FileMapWrapper &mapper, const WEMPersistenceParameters &persistenceParameters, const WEMReadParameters &readParameters, WEMProgressUpdater &progressUpdater)
Base class for triangle and quad patches.
Definition: WEMPatch.h:48
Stores a value list where the values are associated to primitives (WEMNode, WEMEdge,...
Structure to gather persistence parameters.
Helper struct for updating the progress bar while loading/saving.
Helper struct for bundling parameters to keep method interfaces small.