2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #ifndef __DOTNET_LAUNCHER_H__
18 #define __DOTNET_LAUNCHER_H__
21 #include "coreclr_host.h"
22 #include "plugin_manager.h"
26 namespace dotnetcore {
31 CoreRuntime(const char* mode);
33 int initialize(bool standalone);
35 int launch(const char* appId, const char* root, const char* path, int argc, char* argv[]);
39 bool initializeCoreClr(const char* appId, const char* assemblyProbePaths, const char* NIProbePaths, const char* pinvokeProbePaths, const char* tpaList);
41 coreclr_initialize_ptr initializeClr;
42 coreclr_execute_assembly_ptr executeAssembly;
43 coreclr_shutdown_ptr shutdown;
44 coreclr_create_delegate_ptr createDelegate;
45 set_environment_variable_ptr setEnvironmentVariable;
46 std::string __nativeLibDirectory;
49 unsigned int __domainId;
52 bool __enableLogManager;
57 } // namespace runtime
60 #endif /* __DOTNET_LAUNCHER_H__ */