14#include "arcane/core/DotNetRuntimeInitialisationInfo.h"
15#include "arcane/core/internal/DotNetRuntimeInitialisationInfoProperties.h"
17#include "arcane/utils/String.h"
18#include "arcane/utils/internal/Property.h"
32 bool m_is_using_dotnet_runtime =
false;
33 String m_main_assembly_name;
34 String m_execute_method_name;
35 String m_execute_class_name;
42template<
typename V>
void DotNetRuntimeInitialisationInfoProperties::
43_applyPropertyVisitor(V& p)
46 p << b.addString(
"MainAssemblyName")
47 .addDescription(
"Name of the assembly to load at startup")
48 .addCommandLineArgument(
"DotNetMainAssemblyName")
49 .addGetter([](
auto a) {
return a.x.mainAssemblyName(); })
50 .addSetter([](
auto a) { a.x.setMainAssemblyName(a.v); });
52 p << b.addString(
"ExecuteMethodName")
53 .addDescription(
"Name of the method to execute")
54 .addCommandLineArgument(
"DotNetExecuteMethodName")
55 .addGetter([](
auto a) {
return a.x.executeMethodName(); })
56 .addSetter([](
auto a) { a.x.setExecuteMethodName(a.v); });
58 p << b.addString(
"ExecuteClassName")
59 .addDescription(
"Name of the class containing the methode to execute")
60 .addCommandLineArgument(
"DotNetExecuteClassName")
61 .addGetter([](
auto a) {
return a.x.executeClassName(); })
62 .addSetter([](
auto a) { a.x.setExecuteClassName(a.v); });
64 p << b.addString(
"EmbeddedRuntime")
65 .addDescription(
"Name of the dotnet runtime ('coreclr', 'mono') to use")
66 .addCommandLineArgument(
"DotNetEmbeddedRuntime")
67 .addGetter([](
auto a) {
return a.x.embeddedRuntime(); })
68 .addSetter([](
auto a) { a.x.setEmbeddedRuntime(a.v); });
70 p << b.addBool(
"UsingDotNet")
71 .addDescription(
"Set/Unset the loading of the '.Net' runtime with 'coreclr'")
72 .addCommandLineArgument(
"UsingDotNet")
73 .addGetter([](
auto a) {
return a.x.isUsingDotNetRuntime(); })
74 .addSetter([](
auto a) {
75 a.x.setIsUsingDotNetRuntime(a.v);
76 a.x.setEmbeddedRuntime(
"coreclr");
83DotNetRuntimeInitialisationInfo::
84DotNetRuntimeInitialisationInfo()
92DotNetRuntimeInitialisationInfo::
93DotNetRuntimeInitialisationInfo(
const DotNetRuntimeInitialisationInfo& rhs)
94: m_p(new
Impl(*rhs.m_p))
101DotNetRuntimeInitialisationInfo& DotNetRuntimeInitialisationInfo::
102operator=(
const DotNetRuntimeInitialisationInfo& rhs)
106 m_p =
new Impl(*(rhs.m_p));
114DotNetRuntimeInitialisationInfo::
115~DotNetRuntimeInitialisationInfo()
126bool DotNetRuntimeInitialisationInfo::
127isUsingDotNetRuntime()
const
129 return m_p->m_is_using_dotnet_runtime;
132void DotNetRuntimeInitialisationInfo::
133setIsUsingDotNetRuntime(
bool v)
135 m_p->m_is_using_dotnet_runtime = v;
141String DotNetRuntimeInitialisationInfo::
142mainAssemblyName()
const
144 return m_p->m_main_assembly_name;
147void DotNetRuntimeInitialisationInfo::
148setMainAssemblyName(StringView v)
150 m_p->m_main_assembly_name = v;
152 setIsUsingDotNetRuntime(
true);
158String DotNetRuntimeInitialisationInfo::
159executeClassName()
const
161 return m_p->m_execute_class_name;
164void DotNetRuntimeInitialisationInfo::
165setExecuteClassName(StringView v)
167 m_p->m_execute_class_name = v;
173String DotNetRuntimeInitialisationInfo::
174executeMethodName()
const
176 return m_p->m_execute_method_name;
179void DotNetRuntimeInitialisationInfo::
180setExecuteMethodName(StringView v)
182 m_p->m_execute_method_name = v;
188String DotNetRuntimeInitialisationInfo::
189embeddedRuntime()
const
191 return m_p->m_embedded_runtime;
197 m_p->m_embedded_runtime = v;
203ARCANE_REGISTER_PROPERTY_CLASS(DotNetRuntimeInitialisationInfoProperties,());
void setEmbeddedRuntime(StringView name)
Nom du runtime pour le mode embarqué ('mono' ou 'coreclr')
Vue sur une chaîne de caractères UTF-8.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-