PySimultan 0.4.1__py3-none-any.whl → 0.4.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
PySimultan2/__about__.py CHANGED
@@ -1 +1 @@
1
- version = '0.4.1'
1
+ version = '0.4.2'
PySimultan2/__init__.py CHANGED
@@ -91,6 +91,12 @@ class Config:
91
91
  def get_default_mapper(self, *args, **kwargs):
92
92
  return self._default_mapper
93
93
 
94
+ def set_default_data_model(self, data_model):
95
+ self._default_data_model = data_model
96
+
97
+ def set_default_mapper(self, mapper):
98
+ self._default_mapper = mapper
99
+
94
100
 
95
101
  config = Config()
96
102
 
PySimultan2/data_model.py CHANGED
@@ -119,7 +119,7 @@ class DataModel:
119
119
  def __new__(cls, *args, **kwargs):
120
120
 
121
121
  instance = super().__new__(cls)
122
- config.default_data_model = instance
122
+ config.set_default_data_model(instance)
123
123
  try:
124
124
  data_models.add(instance)
125
125
  except Exception as e:
@@ -378,8 +378,8 @@ class DataModel:
378
378
  data_models = WeakSet()
379
379
  data_models_dict = WeakValueDictionary()
380
380
 
381
- if config.default_data_model is self:
382
- config.default_data_model = None
381
+ if config.get_default_data_model() is self:
382
+ config.set_default_data_model(None)
383
383
 
384
384
  del self
385
385
 
PySimultan2/files.py CHANGED
@@ -20,7 +20,7 @@ from SIMULTAN.Data.Components import SimComponent, ComponentMapping
20
20
 
21
21
  # from .config import default_data_model
22
22
 
23
- from . import config
23
+ from . import config, logger
24
24
 
25
25
  from typing import TYPE_CHECKING
26
26
  if TYPE_CHECKING:
@@ -197,7 +197,7 @@ class FileInfo(object, metaclass=MetaMock):
197
197
  :return: FileInfo
198
198
  """
199
199
 
200
- data_model = kwargs.get('data_model', config.default_data_model)
200
+ data_model = kwargs.get('data_model', config.get_default_data_model())
201
201
  resource = create_asset_from_string(filename, content, *args, **kwargs)
202
202
 
203
203
  file_info = cls(resource_entry=resource,
@@ -241,8 +241,8 @@ class FileInfo(object, metaclass=MetaMock):
241
241
  def resource_entry(self) -> Union[ResourceFileEntry, ContainedResourceFileEntry, None]:
242
242
  if self._resource_entry is None:
243
243
  if self.data_model is None:
244
- logger.warning(f'No data model provided. Using default data model: {config.default_data_model.id}.')
245
- self.data_model = config.default_data_model
244
+ logger.warning(f'No data model provided. Using default data model: {config.get_default_data_model().id}.')
245
+ self.data_model = config.get_default_data_model()
246
246
  if self.data_model is not None:
247
247
  self.resource_entry = self.data_model.add_resource(self.file_path)
248
248
  return self._resource_entry
@@ -63,7 +63,7 @@ class BaseGeometry(object, metaclass=MetaMock):
63
63
  def __init__(self, *args, **kwargs):
64
64
  self._wrapped_object: Union[Vertex, Edge, Face, Volume, EdgeLoop, Layer] = kwargs.get('wrapped_object', None)
65
65
  self._geometry_model: Optional[GeometryModel] = kwargs.get('geometry_model', None)
66
- self._object_mapper = kwargs.get('object_mapper', config.default_mapper)
66
+ self._object_mapper = kwargs.get('object_mapper', config.get_default_mapper())
67
67
  self._data_model = kwargs.get('data_model', None)
68
68
 
69
69
  @property
@@ -537,7 +537,7 @@ class GeometryModel(object, metaclass=MetaMock):
537
537
  @classmethod
538
538
  def create_simultan_instance(cls, *args, **kwargs):
539
539
 
540
- data_model: DataModel = kwargs.get('data_model', config.default_data_model)
540
+ data_model: DataModel = kwargs.get('data_model', config.get_default_data_model())
541
541
  name: str = kwargs.get('name', 'GeometryModel')
542
542
 
543
543
  new_geo_model, resource = data_model.create_new_geometry_model(name=name)
@@ -549,8 +549,8 @@ class GeometryModel(object, metaclass=MetaMock):
549
549
 
550
550
  def __init__(self, *args, **kwargs):
551
551
  self._wrapped_object: NetGeometryModel = kwargs.get('wrapped_object', None)
552
- self._object_mapper = kwargs.get('object_mapper', config.default_mapper)
553
- self._data_model = kwargs.get('data_model', config.default_data_model)
552
+ self._object_mapper = kwargs.get('object_mapper', config.get_default_mapper())
553
+ self._data_model = kwargs.get('data_model', config.get_default_data_model())
554
554
 
555
555
  @property
556
556
  def name(self):
@@ -29,7 +29,7 @@ class PythonMapper(object):
29
29
 
30
30
  def __new__(cls, *args, **kwargs):
31
31
  instance = super(PythonMapper, cls).__new__(cls)
32
- config.default_mapper = instance
32
+ config.set_default_mapper(instance)
33
33
  return instance
34
34
 
35
35
  def __init__(self, *args, **kwargs):
@@ -143,8 +143,8 @@ class PythonMapper(object):
143
143
  return None
144
144
 
145
145
  if data_model is None:
146
- logger.warning(f'No data model provided. Using default data model: {config.default_data_model.id}.')
147
- data_model = config.default_data_model
146
+ logger.warning(f'No data model provided. Using default data model: {config.get_default_data_model().id}.')
147
+ data_model = config.get_default_data_model()
148
148
  data_model_id = data_model.id
149
149
  # data_model_id = list(data_models)[0].id
150
150
  # data_model = list(data_models)[0]
@@ -219,8 +219,8 @@ class PythonMapper(object):
219
219
  cls._cls_instances = WeakSet()
220
220
  cls.__property_cache__ = {}
221
221
 
222
- if config.default_mapper is self:
223
- config.default_mapper = None
222
+ if config.get_default_mapper() is self:
223
+ config.set_default_mapper(None)
224
224
 
225
225
  def copy(self):
226
226
  new_mapper = PythonMapper()
@@ -231,4 +231,4 @@ class PythonMapper(object):
231
231
 
232
232
 
233
233
  if config.get_default_mapper() is None:
234
- config._default_mapper = PythonMapper()
234
+ config.set_default_mapper(PythonMapper())
@@ -68,10 +68,10 @@ class MetaMock(type):
68
68
  data_model = list(data_models.data)[0]()
69
69
  kwargs['data_model'] = data_model
70
70
  else:
71
- if config.default_data_model is not None:
71
+ if config.get_default_data_model() is not None:
72
72
  logger.warning(
73
- f'No data model provided. Using default data model: {config.default_data_model.id}.')
74
- data_model = config.default_data_model
73
+ f'No data model provided. Using default data model: {config.get_default_data_model().id}')
74
+ data_model = config.get_default_data_model()
75
75
  kwargs['data_model'] = data_model
76
76
  else:
77
77
  raise TypeError((f'Error creating new instance of class {cls.__name__}:\n'
@@ -154,8 +154,8 @@ class SimultanObject(object, metaclass=MetaMock):
154
154
 
155
155
  self._wrapped_obj: Union[SimComponent, None] = kwargs.get('wrapped_obj', None)
156
156
  self.__obj_init__ = kwargs.get('__obj_init__', False)
157
- self._data_model: Union[DataModel, None] = kwargs.get('data_model', config.default_data_model)
158
- self._object_mapper: Union[PythonMapper, None] = kwargs.get('object_mapper', config.default_mapper)
157
+ self._data_model: Union[DataModel, None] = kwargs.get('data_model', config.get_default_data_model())
158
+ self._object_mapper: Union[PythonMapper, None] = kwargs.get('object_mapper', config.get_default_mapper())
159
159
  self.name = kwargs.get('name', None)
160
160
 
161
161
  self.__property_cache__ = {}
PySimultan2/utils.py CHANGED
@@ -1,6 +1,5 @@
1
1
  from __future__ import annotations
2
2
 
3
- from . import config
4
3
  from enum import Enum
5
4
  from weakref import WeakSet
6
5
  import numpy as np
@@ -227,7 +226,7 @@ def get_default_slot(default_type: Union[SimTaxonomyEntryReference, SimTaxonomyE
227
226
  :return:
228
227
  """
229
228
 
230
- default_taxonomy_entry = SimDefaultSlotKeys.GetDefaultSlot(config.default_data_model.project_data_manager.Taxonomies,
229
+ default_taxonomy_entry = SimDefaultSlotKeys.GetDefaultSlot(config.get_default_data_model().project_data_manager.Taxonomies,
231
230
  SimDefaultSlotKeys.Undefined)
232
231
 
233
232
  if default_type is SimTaxonomyEntryReference:
@@ -604,7 +603,7 @@ def create_simultan_component_for_taxonomy(cls, *args, **kwargs) -> SimComponent
604
603
 
605
604
  data_model = kwargs.get('data_model', None)
606
605
  if data_model is None:
607
- data_model = config.default_data_model
606
+ data_model = config.get_default_data_model()
608
607
 
609
608
  # simultan_taxonomy = cls._taxonomy_map.get_or_create_simultan_taxonomy(data_model=data_model)
610
609
  # tayonomy_entry = cls._taxonomy_map.get_or_create_simultan_taxonomy_entry(data_model=data_model)
@@ -679,7 +678,7 @@ def get_property(prop_name: Optional[str] = None,
679
678
  data_model = component._data_model
680
679
  object_mapper = component._object_mapper
681
680
  else:
682
- data_model = config.default_data_model
681
+ data_model = config.get_default_data_model()
683
682
  obj = get_component_taxonomy_entry(wrapped_obj, text_or_key)
684
683
 
685
684
  return get_obj_value(obj, data_model=data_model, object_mapper=object_mapper)
@@ -877,7 +876,7 @@ def create_mapped_python_object(value: SimComponent,
877
876
  """
878
877
 
879
878
  if object_mapper is None:
880
- object_mapper = config.default_mapper
879
+ object_mapper = config.get_default_mapper()
881
880
 
882
881
  # logger.debug(f'Creating mapped python object for {value}.')
883
882
  if type(value) in object_mapper.registered_classes.values():
@@ -973,13 +972,13 @@ def set_property_to_list(value: Union[list, tuple, set, ComponentList],
973
972
 
974
973
  if 'ComponentList' in [x.Target.Key for x in component.Slots]:
975
974
  if not hasattr(component, '_object_mapper'):
976
- mapper = config.default_mapper
975
+ mapper = config.get_default_mapper()
977
976
  component._object_mapper = mapper
978
977
  else:
979
978
  mapper = component._object_mapper
980
979
 
981
980
  if not hasattr(component, '_data_model'):
982
- data_model = config.default_data_model
981
+ data_model = config.get_default_data_model()
983
982
  component._data_model = data_model
984
983
  else:
985
984
  data_model = component._data_model
@@ -1240,13 +1239,13 @@ def set_property_to_dict(value: dict,
1240
1239
 
1241
1240
  if 'ComponentDictionary' in [x.Target.Key for x in component.Slots]:
1242
1241
  if not hasattr(component, '_object_mapper'):
1243
- mapper = config.default_mapper
1242
+ mapper = config.get_default_mapper()
1244
1243
  component._object_mapper = mapper
1245
1244
  else:
1246
1245
  mapper = component._object_mapper
1247
1246
 
1248
1247
  if not hasattr(component, '_data_model'):
1249
- data_model = config.default_data_model
1248
+ data_model = config.get_default_data_model()
1250
1249
  component._data_model = data_model
1251
1250
  else:
1252
1251
  data_model = component._data_model
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: PySimultan
3
- Version: 0.4.1
3
+ Version: 0.4.2
4
4
  Project-URL: Documentation, https://github.com/Bühler Maximilian/PySimultan2#readme
5
5
  Project-URL: Issues, https://github.com/Bühler Maximilian/PySimultan2/issues
6
6
  Project-URL: Source, https://github.com/Bühler Maximilian/PySimultan2
@@ -1,15 +1,15 @@
1
- PySimultan2/__about__.py,sha256=L2Offsg-6m5gCNnCgevSz7hv6G-kIe1QidASLbohFtk,19
2
- PySimultan2/__init__.py,sha256=00tn7bPM8yncDR41VxBYm5_gVy6i7ZdzpRJoop2pbLc,2692
3
- PySimultan2/data_model.py,sha256=FBYw5yz4lNGgbpnuCnkkwBEkSxI3bv9eE4vumoxCeLU,26956
1
+ PySimultan2/__about__.py,sha256=Dz7KO6jRqp7b9P43mwLgOykNdRlA8qMxtHiAsqZsQbE,19
2
+ PySimultan2/__init__.py,sha256=2pdrZP8ECaVRlaCfwzFblht_30JfenzyQ2rEt-QldeU,2876
3
+ PySimultan2/data_model.py,sha256=m9q3P5SfxYXdmwdQuPoTazHZAJ1xwazixFtdetJ2Dgk,26968
4
4
  PySimultan2/default_types.py,sha256=GGAnuOCwF7YSt6tPDMr6houAILWyRsAhMfb9Y_Rpetk,22946
5
- PySimultan2/files.py,sha256=97lRYzKP9hEqP0vKRUbYdd4WSRkgVQ-mJhSJuP_CYSY,12631
5
+ PySimultan2/files.py,sha256=gx3BA6WYjNVplqqes7jkPopp6O50pgLvantXgmitx54,12657
6
6
  PySimultan2/multi_values.py,sha256=ZFXlTLuZo32x7_7diYAp2XEjp5uwgHLgNOzN7v74-5I,13650
7
- PySimultan2/object_mapper.py,sha256=FvZR6qEB_dbsaH6V3EE9JgZdTgRTEvbYus01xp6wt9k,9676
8
- PySimultan2/simultan_object.py,sha256=nK28YKOMAQfRJZGwjgbI9sFtJBb84kEaTIwGzWBiAqw,16900
7
+ PySimultan2/object_mapper.py,sha256=hRYvgQYZb4NBZ1DyA9Nwd04i19q8SawFv-8aJHFba_g,9702
8
+ PySimultan2/simultan_object.py,sha256=F5XeHHmbh4s3hb4K8f4m-Pl9Oz1d0Pxc72VV91CQi3w,16929
9
9
  PySimultan2/taxonomy_maps.py,sha256=aU9zUJph7QcInIZq0W-Vqoy4DYr0CEs-VsXwPMK_cxU,7976
10
- PySimultan2/utils.py,sha256=w806h9aKT3T8Qn178qpXvuzaNpoNGzQVKORhtt3VGBM,62456
10
+ PySimultan2/utils.py,sha256=j5xnjPIWy6k3_zY2xTXN0VsnpjQgRSyakbO9DIqBsLo,62482
11
11
  PySimultan2/geometry/__init__.py,sha256=nJolTD1i5J8qUkOQa-r3D20aq3Co3sN31Xc0n4wJpJo,248
12
- PySimultan2/geometry/geometry_base.py,sha256=HMz4jZk9Himd5zXZw642kX80bs5TcZNzAE4lPTIRwas,23393
12
+ PySimultan2/geometry/geometry_base.py,sha256=jOTNMISGLRjUUjVfPZ64A2Fp4oinv42polIct9bgIY4,23417
13
13
  PySimultan2/geometry/utils.py,sha256=J25YsK8sso_UL7xRusItQZvyjtvxdOsSPelBQYFABhY,8519
14
14
  PySimultan2/resources/AssimpNet.dll,sha256=x8uwMHPRmEH9fDQihfEQLUdblM1u7RP-CCnUjOpXcLo,205312
15
15
  PySimultan2/resources/AvalonDock.dll,sha256=9tCcw7cpaVq0bh1H2sfcxb8EWhySmgujPs89lAqIPZs,500224
@@ -75,7 +75,7 @@ PySimultan2/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
75
75
  PySimultan2/resources/assimp.dll,sha256=HwfDwXqoPDTFRyoQpA3qmgZoUdFtziJkV5fNtktEZEU,6081536
76
76
  PySimultan2/resources/defaultsettings.xml,sha256=s6Tk1tubLz5UYqXZWpD42EDHzedemRY1nEneoIVcUfg,392
77
77
  PySimultan2/resources/setup.bat,sha256=fjvvYfVM6TalS-QTSiKAbAId5nTsk8kGGo06ba-wWaY,32
78
- pysimultan-0.4.1.dist-info/METADATA,sha256=J3X6HkTS9PHazoL50e2K-cugM3v3-7dRXjPe-oEVnRM,1657
79
- pysimultan-0.4.1.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
80
- pysimultan-0.4.1.dist-info/licenses/LICENSE.txt,sha256=pmSr98k6N005KMojnZxzLGRuRlDjDx3PUrK1lFj53HA,1126
81
- pysimultan-0.4.1.dist-info/RECORD,,
78
+ pysimultan-0.4.2.dist-info/METADATA,sha256=bwynJBG0p5oUVISh5e51xjWYfKmdU5IGPYpCkRmt7Tk,1657
79
+ pysimultan-0.4.2.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
80
+ pysimultan-0.4.2.dist-info/licenses/LICENSE.txt,sha256=pmSr98k6N005KMojnZxzLGRuRlDjDx3PUrK1lFj53HA,1126
81
+ pysimultan-0.4.2.dist-info/RECORD,,