OSDN Git Service

* WorkBackup: 2016/01/18(Mon) AM 05:33
authorKoine Yuusuke(koinec) <koinec@users.osdn.me>
Sun, 17 Jan 2016 20:34:34 +0000 (05:34 +0900)
committerKoine Yuusuke(koinec) <koinec@users.osdn.me>
Sun, 17 Jan 2016 20:34:34 +0000 (05:34 +0900)
include/libgoblin.h
libgoblin/drd64_libgoblin_loadprog.c
libgoblin/drd64_libgoblin_loadprog.h
libgoblin/drd64_libgoblin_type.h

index 6eb79f6..fd05a63 100644 (file)
@@ -78,6 +78,13 @@ LIBGOBLIN_API_BINFO
 LIBGOBLIN_API_BINFO
        int LibGoblin_FreeBinInfo( int i_binfoid );
 
+#ifdef DRD64_SRC_LIBGOBLIN_LOADPROG
+       #define LIBGOBLIN_API_LOADPROG
+#else
+       #define LIBGOBLIN_API_LOADPROG  extern
+#endif
+LIBGOBLIN_API_LOADPROG
+       int LibGoblin_LoadProgram( int i_pgid, const char *pstr_progpath );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN */
index 78bcd4f..6ee3973 100644 (file)
@@ -39,5 +39,40 @@ Comment:
 
 /*----------------------------------------------------------------------
 ----------------------------------------------------------------------*/
+LIBGOBLIN_LOADPROG_EXTERN
+int
+       LibGoblin_LoadProg_LoadProgram(
+                       LibGoblin_ProgramInfo   *p_pginfo,
+                       const char      *pstr_progpath )
+{
+
+       assert( NULL != p_pginfo );
+       assert( NULL != pstr_progpath );
+
+       return 0x00;
+}
+
+
+/***********************************************************************
+***********************************************************************/
+LIBGOBLIN_API_LOADPROG
+int
+       LibGoblin_LoadProgram(
+                       int             i_pgid,
+                       const char      *pstr_progpath )
+{
+       int             i_result;
+       LibGoblin_ProgramInfo   *p_pginfo;
+
+       p_pginfo        = LibGoblin_ProgInfo_GetProgInfo( i_pgid );
+       if( NULL == p_pginfo )  {
+               return -0x01;
+       }
+
+       i_result        = LibGoblin_LoadProg_LoadProgram( p_pginfo, pstr_progpath );
+
+       return i_result;
+}
+
 
 /* EOF of drd64_.c ----------------------------------- */
index b1475be..f3d13b0 100644 (file)
@@ -37,10 +37,10 @@ Comment:
 #ifndef DRD64_HEADER_LOADPROG
 #define DRD64_HEADER_LOADPROG
 
-#ifdef DRD64_SRC_LOADPROG
-       #define DRD64_LOADPROG_EXTERN
+#ifdef DRD64_SRC_LIBGOBLIN_LOADPROG
+       #define LIBGOBLIN_LOADPROG_EXTERN
 #else
-       #define DRD64_LOADPROG_EXTERN   extern
+       #define LIBGOBLIN_LOADPROG_EXTERN       extern
 #endif
 
 #if defined DRD64_SRC_LIBGOBLIN_LOADPROG
@@ -49,6 +49,10 @@ Comment:
        #define LIBGOBLIN_LOADPROG_INTERNALFUNC
 #endif
 
+LIBGOBLIN_LOADPROG_EXTERN
+       int LibGoblin_LoadProg_LoadProgram(
+                               LibGoblin_ProgramInfo *p_pginfo, const char *pstr_progpath );
+
 
 #endif /* DRD64_HEADER_XXX */
 
index 0f6d494..9d04f84 100644 (file)
@@ -64,9 +64,10 @@ Comment:
 #define        LIBGOBLIN_BINFO_SECTION_BSS             0x02
 
 #define        LIBGOBLIN_BINFO_PHASE_INIT              0x00
-#define        LIBGOBLIN_BINFO_PHASE_ALLOCED   0x01
-#define        LIBGOBLIN_BINFO_PHASE_BINREAD   0x02
-#define        LIBGOBLIN_BINFO_PHASE_ANALYZED  0x03
+#define        LIBGOBLIN_BINFO_PHASE_ALLOCED   0x10
+#define        LIBGOBLIN_BINFO_PHASE_SETPROG   0x20
+#define        LIBGOBLIN_BINFO_PHASE_BINREAD   0x30
+#define        LIBGOBLIN_BINFO_PHASE_ANALYZED  0x40
 
 #define        LIBGOBLIN_BINFO_MAXFILES                3
 #define        LIBGOBLIN_BINFO_FILE_EXEC               0