14#include "arcane/impl/DataFactoryMng.h"
16#include "arcane/utils/PlatformUtils.h"
17#include "arcane/utils/Deleter.h"
18#include "arcane/utils/ITraceMng.h"
19#include "arcane/utils/FatalErrorException.h"
21#include "arcane/IApplication.h"
22#include "arcane/IData.h"
23#include "arcane/IDataStorageFactory.h"
24#include "arcane/MathUtils.h"
26#include "arcane/datatype/DataStorageTypeInfo.h"
27#include "arcane/datatype/DataStorageBuildInfo.h"
29#include "arcane/impl/SerializedData.h"
30#include "arcane/impl/DataFactory.h"
31#include "arcane/impl/DataOperation.h"
43arcaneRegisterSimpleData(IDataFactoryMng* df);
49DataFactoryMng(IApplication* app)
50: TraceAccessor(app->traceMng())
52, m_old_factory(new DataFactory(app))
68Ref<IData> DataFactoryMng::
69createSimpleDataRef(
const String& storage_type,
const DataStorageBuildInfo& build_info)
71 auto x = m_factories.find(storage_type);
72 if (x==m_factories.end())
73 ARCANE_FATAL(
"Can not find data factory named={0}",storage_type);
76 DataStorageBuildInfo b = build_info;
77 if (!b.memoryAllocator())
78 b.setMemoryAllocator(platform::getDefaultDataAllocator());
80 return x->second->createSimpleDataRef(b);
89 return arcaneCreateDataOperation(
rt);
108createEmptySerializedDataRef()
119 arcaneRegisterSimpleData(
this);
128 return TraceAccessor::traceMng();
138 m_factories.insert(std::make_pair(
t.fullName(),factory));
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
Gestionnaire de fabrique d'une donnée.
Informations de type pour un conteneur de données.
Interface de l'application.
Interface d'une opération sur une donnée.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Vue constante d'un tableau de type T.
Interface du gestionnaire de traces.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Ref< ISerializedData > arcaneCreateSerializedDataRef(eDataType data_type, Int64 memory_size, Integer nb_dim, Int64 nb_element, Int64 nb_base_element, bool is_multi_size, Int64ConstArrayView dimensions)
Créé des données sérialisées.
Ref< ISerializedData > arcaneCreateEmptySerializedDataRef()
Créé des données sérialisées.
eDataType
Type d'une donnée.
eReduceType
Types des réductions supportées.
auto makeRef(InstanceType *t) -> Ref< InstanceType >
Créé une référence sur un pointeur.