Bug-fix: fix target dll searching logic
[platform/core/dotnet/launcher.git] / NativeLauncher / inc / ni_common.h
index ca53f72..28b387f 100644 (file)
@@ -20,6 +20,7 @@
 #include <functional>
 #include <vector>
 #include <string>
+#include <cstdint>
 
 #ifndef DWORD
 #define DWORD uint32_t
 #define NI_FLAGS_APPNI                  0x0001
 #define NI_FLAGS_VERBOSE                0x0002
 #define NI_FLAGS_APP_UNDER_RO_AREA      0x0004
-#define NI_FLAGS_REF                    0x0008
 #define NI_FLAGS_INPUT_BUBBLE           0x0010
 #define NI_FLAGS_INPUT_BUBBLE_REF       0x0020
 #define NI_FLAGS_EXTRA_REF              0x0040
 #define NI_FLAGS_NO_PIPELINE            0x0080
 #define NI_FLAGS_MIBC                   0x0100
 #define NI_FLAGS_PRINT_CMD              0x0200
+#define NI_FLAGS_SKIP_RO_APP            0x0400
+#define NI_FLAGS_RM_ORIGIN_AFTER_NI     0x0800
+#define NI_FLAGS_SET_PRIORITY           0x1000
 
 typedef std::function<void (std::string)> afterCreate;
 
@@ -55,10 +58,11 @@ typedef enum {
 
 typedef struct NIOption{
        DWORD flags;
-       std::vector<std::string> refPath;
+       std::vector<std::string> refFiles;
        std::vector<std::string> extraRefPath;
-       std::vector<std::string> inputBubbleRefPath;
+       std::vector<std::string> inputBubbleRefFiles;
        std::vector<std::string> mibcPath;
+       int priority;
 } NIOption;
 
 /**
@@ -81,10 +85,11 @@ void finalizeNICommon();
 
 /**
  * @brief create native images for platform DLLs (.NETCore + TizenFX)
+ * @param[in] paths paths to directories which contains extra platform dlls
  * @param[in] flags additional flags for the image generator
  * @return ni_error_e
  */
-ni_error_e createNIPlatform(NIOption* opt);
+ni_error_e createNIPlatform(std::string& extraInputs, NIOption* opt);
 
 /**
  * @brief create a native image for a single DLL
@@ -130,11 +135,11 @@ void removeNIUnderDirs(const std::string& rootPaths);
 ni_error_e removeNIUnderPkgRoot(const std::string& pkgId);
 
 /**
- * @brief regenerate native images of all installed applications
+ * @brief regenerate native images of all installed packages (tpk, rpk)
  * @param[in] flags additional flags for the image generator
  * @return ni_error_e
  */
-ni_error_e regenerateAppNI(NIOption* opt);
+ni_error_e regeneratePkgNI(NIOption* opt);
 
 /**
  * @brief regenerate native image of TAC for all shared assembly.
@@ -144,15 +149,8 @@ ni_error_e regenerateAppNI(NIOption* opt);
 ni_error_e regenerateTACNI(NIOption* opt);
 
 /**
- * @brief remove app profile data of a package
- * @param[in] pkgId package ID
- * @return ni_error_e
- */
-ni_error_e removeAppProfileData(const std::string& pkgId);
-
-/**
- * @brief remove all app profile data
+ * @brief Sets the priority of the process to the specified values from -20 to 19.(default : 0)
  */
-void removeAllAppProfileData();
+void setPriority(NIOption* opt);
 
 #endif /* __NI_COMMON_H__ */