ReaderSettings.h
1 //##################################################################################################
2 //
3 // Ceetron Desktop Components
4 // Component: ImportCae
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2014, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeCore/Base.h"
16 #include "CeeUnstructGrid/Element.h"
17 
18 #include "CeeImportCae/Base.h"
19 #include "CeeImportCae/ReaderSettingsMarc.h"
20 #include "CeeImportCae/ReaderSettingsPtc.h"
21 #include "CeeImportCae/ReaderSettingsOpenFoam.h"
22 #include "CeeImportCae/ReaderSettingsDataProvider.h"
23 
24 #include <vector>
25 #include <map>
26 #include <string>
27 
28 namespace cee {
29 namespace imp {
30 namespace cae {
31 
32 class DataSourceCaePrivate;
33 
34 //==================================================================================================
35 //
36 //
37 //
38 //==================================================================================================
39 class CEE_IMP_CAE_EXPORT ReaderSettings
40 {
41 
42 public:
44  virtual ~ReaderSettings();
45 
46  const ReaderSettingsMarc& marc() const;
47  ReaderSettingsMarc& marc();
48 
49  const ReaderSettingsPtc& ptc() const;
50  ReaderSettingsPtc& ptc();
51 
52  const ReaderSettingsOpenFoam& openFoam() const;
53  ReaderSettingsOpenFoam& openFoam();
54 
55  size_t dataProviderSettingsCount() const;
56  const ReaderSettingsDataProvider& dataProviderSettings(size_t index) const;
57  ReaderSettingsDataProvider& dataProviderSettings(size_t index);
58  void addDataProviderSettings(const cee::imp::cae::ReaderSettingsDataProvider& cdpSettings);
59 
60  void setEnsuresUniqueResultNames(bool ensure);
61  bool ensuresUniqueResultNames() const;
62 
63  void setUsesUndefinedResults(bool use);
64  bool usesUndefinedResults() const;
65 
66  bool isGlobalCoordinateTransformationEnabled() const;
67  void enableGlobalCoordinateTransformation(bool enable);
68 
69  void excludeElementCategory(cee::ug::Element::Category category);
70  void clearExcludedElementCategories();
71  const std::vector<cee::ug::Element::Category>& excludedElementCategories() const;
72 
73  int getCategoryBottomSectionId(int categoryId) const;
74  int getCategoryTopSectionId(int categoryId) const;
75  std::vector<int> getSectionCategoryIds() const;
76 
77  void setTopAndBottomSectionIdForCategory(int categoryId, int sectionIdTop, int sectionIdBottom);
78 
79 private:
80  CEE_PRIVATE_IMPL(ReaderSettings);
81  CEE_BASE_F(DataSourceCaePrivate);
82 };
83 
84 }
85 }
86 }
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppComponent.cpp:26
Settings manager for the different CAE file formats supported by ImportCae.
Definition: ReaderSettings.h:39
Settings applicable to the Marc file reader.
Definition: ReaderSettingsMarc.h:26
Settings applicable to the PTC file reader.
Definition: ReaderSettingsPtc.h:26
Settings applicable to the OpenFoam file reader.
Definition: ReaderSettingsOpenFoam.h:26
Settings applicable to the DataProvider plugin reader.
Definition: ReaderSettingsDataProvider.h:29
Category
List of categories.
Definition: Element.h:54