14#include "arcane/core/DotNetRuntimeInitialisationInfo.h"
15#include "arcane/core/internal/DotNetRuntimeInitialisationInfoProperties.h"
17#include "arcane/utils/String.h"
18#include "arccore/common/internal/Property.h"
33 bool m_is_using_dotnet_runtime =
false;
34 String m_main_assembly_name;
35 String m_execute_method_name;
36 String m_execute_class_name;
43template <
typename V>
void DotNetRuntimeInitialisationInfoProperties::
44_applyPropertyVisitor(V& p)
47 p << b.addString(
"MainAssemblyName")
48 .addDescription(
"Name of the assembly to load at startup")
49 .addCommandLineArgument(
"DotNetMainAssemblyName")
50 .addGetter([](
auto a) {
return a.x.mainAssemblyName(); })
51 .addSetter([](
auto a) { a.x.setMainAssemblyName(a.v); });
53 p << b.addString(
"ExecuteMethodName")
54 .addDescription(
"Name of the method to execute")
55 .addCommandLineArgument(
"DotNetExecuteMethodName")
56 .addGetter([](
auto a) {
return a.x.executeMethodName(); })
57 .addSetter([](
auto a) { a.x.setExecuteMethodName(a.v); });
59 p << b.addString(
"ExecuteClassName")
60 .addDescription(
"Name of the class containing the methode to execute")
61 .addCommandLineArgument(
"DotNetExecuteClassName")
62 .addGetter([](
auto a) {
return a.x.executeClassName(); })
63 .addSetter([](
auto a) { a.x.setExecuteClassName(a.v); });
65 p << b.addString(
"EmbeddedRuntime")
66 .addDescription(
"Name of the dotnet runtime ('coreclr', 'mono') to use")
67 .addCommandLineArgument(
"DotNetEmbeddedRuntime")
68 .addGetter([](
auto a) {
return a.x.embeddedRuntime(); })
69 .addSetter([](
auto a) { a.x.setEmbeddedRuntime(a.v); });
71 p << b.addBool(
"UsingDotNet")
72 .addDescription(
"Set/Unset the loading of the '.Net' runtime with 'coreclr'")
73 .addCommandLineArgument(
"UsingDotNet")
74 .addGetter([](
auto a) {
return a.x.isUsingDotNetRuntime(); })
75 .addSetter([](
auto a) {
76 a.x.setIsUsingDotNetRuntime(a.v);
77 a.x.setEmbeddedRuntime(
"coreclr");
84DotNetRuntimeInitialisationInfo::
85DotNetRuntimeInitialisationInfo()
93DotNetRuntimeInitialisationInfo::
94DotNetRuntimeInitialisationInfo(
const DotNetRuntimeInitialisationInfo& rhs)
95: m_p(new
Impl(*rhs.m_p))
102DotNetRuntimeInitialisationInfo& DotNetRuntimeInitialisationInfo::
103operator=(
const DotNetRuntimeInitialisationInfo& rhs)
107 m_p =
new Impl(*(rhs.m_p));
115DotNetRuntimeInitialisationInfo::
116~DotNetRuntimeInitialisationInfo()
127bool DotNetRuntimeInitialisationInfo::
128isUsingDotNetRuntime()
const
130 return m_p->m_is_using_dotnet_runtime;
133void DotNetRuntimeInitialisationInfo::
134setIsUsingDotNetRuntime(
bool v)
136 m_p->m_is_using_dotnet_runtime = v;
142String DotNetRuntimeInitialisationInfo::
143mainAssemblyName()
const
145 return m_p->m_main_assembly_name;
148void DotNetRuntimeInitialisationInfo::
149setMainAssemblyName(StringView v)
151 m_p->m_main_assembly_name = v;
153 setIsUsingDotNetRuntime(
true);
159String DotNetRuntimeInitialisationInfo::
160executeClassName()
const
162 return m_p->m_execute_class_name;
165void DotNetRuntimeInitialisationInfo::
166setExecuteClassName(StringView v)
168 m_p->m_execute_class_name = v;
174String DotNetRuntimeInitialisationInfo::
175executeMethodName()
const
177 return m_p->m_execute_method_name;
180void DotNetRuntimeInitialisationInfo::
181setExecuteMethodName(StringView v)
183 m_p->m_execute_method_name = v;
189String DotNetRuntimeInitialisationInfo::
190embeddedRuntime()
const
192 return m_p->m_embedded_runtime;
198 m_p->m_embedded_runtime = v;
204ARCANE_REGISTER_PROPERTY_CLASS(DotNetRuntimeInitialisationInfoProperties, ());
void setEmbeddedRuntime(StringView name)
Runtime name for embedded mode ('mono' or 'coreclr').
View of a UTF-8 character string.
Unicode character string.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --