#define DRD64_SRCID_LIBGOBLIN_PROGINFO 0x11
#define DRD64_SRCID_LIBGOBLIN_BINARYINFO 0x12
#define DRD64_SRCID_LIBGOBLIN_BINARYFILE 0x13
+#define DRD64_SRCID_LIBGOBLIN_SRCFILE 0x14
+#define DRD64_SRCID_LIBGOBLIN_OBJINFO 0x15
#endif /* DRD64_HEADER_LIBGOBLIN_MAIN */
#define DRD64_SRC_LIBGOBLIN_OBJINFO
#include"drd64_libgoblin.h"
+#define LOCATION(n) DRD64_ERR_LOCATION( \
+ DRD64_ERROR_MODULE_LIBGOBLIN, DRD64_ERROR_ARCH_NODEPEND, \
+ DRD64_SRCID_LIBGOBLIN_OBJINFO, (n))
+
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_GetObjectInfo 0x14
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_GetObjectInfo(
{
assert( NULL != p_pginfo );
- if(( p_pginfo->objinfo.i_alloced <= i_oid ) || ( 0 > i_oid ))
- { return NULL; }
-
+ if(( p_pginfo->objinfo.i_alloced <= i_oid ) || ( 0 > i_oid )) {
+ return NULL;
+ }
return OBJINFO(p_pginfo, i_oid);
}
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_GetGroupChildTop 0x31
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_GetGroupChildTop(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_GetGroupNext 0x32
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_GetGroupNext(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_ClearObjectInfo 0x13
void
ObjectInfo_ClearObjectInfo(
LibGoblin_ObjectInfo *p_objinfo )
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_AllocObjectInfo 0x11
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_AllocObjectInfo(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_CreateMasterObject 0x51
int
ObjectInfo_CreateMasterObject(
LibGoblin_ProgramInfo *p_pginfo )
{
LibGoblin_ObjectInfo *p_objinfo;
- if( NO_OBJ != p_pginfo->objinfo.i_topid ) { return 0x00; }
+ if( NO_OBJ != p_pginfo->objinfo.i_topid ) {
+ return 0x00;
+ }
p_objinfo = ObjectInfo_AllocObjectInfo( p_pginfo );
if( NULL == p_objinfo ) {
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_AdoptObjectInfo 0x23
int
ObjectInfo_AdoptObjectInfo(
LibGoblin_ProgramInfo *p_pginfo,
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_InsetObjectInfo 0x21
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_InsetObject(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_SearchAddressSize 0x41
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_SearchAddressSize(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_SearchDynamicSymbol 0x42
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_SearchDynamicSymbol(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+/*
LIBGOBLIN_OBJINFO_EXTERN
LibGoblin_ObjectInfo *
ObjectInfo_AllocWorkObject(
return p_objinfo;
}
+*/
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_FreeObjectInfo 0x12
LIBGOBLIN_OBJINFO_EXTERN
int
ObjectInfo_FreeObjectInfo(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_DeleteObjectInfo 0x22
LIBGOBLIN_OBJINFO_EXTERN
int
ObjectInfo_DeleteObjectInfo(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_Init 0x01
LIBGOBLIN_OBJINFO_EXTERN
int
ObjectInfo_Init(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_ObjectInfo_Term 0x02
LIBGOBLIN_OBJINFO_EXTERN
int
ObjectInfo_Term(
#define DRD64_SRC_LIBGOBLIN_SRCFILE
#include"drd64_libgoblin.h"
+#define LOCATION(n) DRD64_ERR_LOCATION( \
+ DRD64_ERROR_MODULE_LIBGOBLIN, DRD64_ERROR_ARCH_NODEPEND, \
+ DRD64_SRCID_LIBGOBLIN_SRCFILE, (n))
+
+
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_GetSrcFile 0x14
LIBGOBLIN_SRCFILE_EXTERN
LibGoblin_SrcFile *
SrcFile_GetSrcFile(
int i_srcid )
{
- if(( gi_max_src_file <= i_srcid ) || ( 0 > i_srcid ))
- { return NULL; }
+ if(( gi_max_src_file <= i_srcid ) || ( 0 > i_srcid )) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILED_ARG, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_GetSrcFile ),
+ errno, (QWord)i_srcid , (QWord)gi_max_src_file, __LINE__ );
+ return NULL;
+ }
- if( -0x01 == SRCFILE( i_srcid )->i_id )
- { return NULL; }
+ if( -0x01 == SRCFILE( i_srcid )->i_id ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILCALL, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_GetSrcFile ),
+ errno, (QWord)i_srcid , (QWord)0x00, __LINE__ );
+ return NULL;
+ }
return SRCFILE( i_srcid );
}
/*----------------------------------------------------------------------
OK
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_AllocSrcFile 0x11
LIBGOBLIN_SRCFILE_EXTERN
LibGoblin_SrcFile *
SrcFile_AllocSrcFile(
}
// Bug -- Not Exist Non-used SrcFile struct.
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_BUG, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_AllocSrcFile ),
+ errno, (QWord)gi_now_src_file , (QWord)gi_max_src_file, __LINE__ );
goto goto_SrcFile_AllocSrcFile_post;
}
sizeof( LibGoblin_SrcFile ) *
( gi_alloc_src_file + LIBGOBLIN_SRCFILE_UNITS ) );
if( NULL == p_srcbase ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_NOMEMORY, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_AllocSrcFile ),
+ errno, (QWord)gi_alloc_src_file , (QWord)gi_max_src_file, __LINE__ );
goto goto_SrcFile_AllocSrcFile_post;
}
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_SearchSrcFile 0x31
LIBGOBLIN_SRCFILE_EXTERN
LibGoblin_SrcFile *
SrcFile_SearchSrcFile(
/*----------------------------------------------------------------------
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_DispenseSrcFile 0x21
LIBGOBLIN_SRCFILE_EXTERN
LibGoblin_SrcFile *
SrcFile_DispenseSrcFile(
/*----------------------------------------------------------------------
OK
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_ClearSrcFile 0x13
void
SrcFile_ClearSrcFile(
LibGoblin_SrcFile *p_srcfile )
/*----------------------------------------------------------------------
OK
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_FreeSrcFile 0x12
LIBGOBLIN_SRCFILE_EXTERN
int
SrcFile_FreeSrcFile(
assert( NULL != p_srcfile );
- if( -0x01 == p_srcfile->i_id ) { return 0x00; }
+ if( -0x01 == p_srcfile->i_id ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILCALL, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_FreeSrcFile ),
+ errno, (QWord)0x00 , (QWord)0x00, __LINE__ );
+ return 0x00;
+ }
i_id = p_srcfile->i_id;
SrcFile_ClearSrcFile( p_srcfile );
/*----------------------------------------------------------------------
OK
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_Init 0x01
LIBGOBLIN_SRCFILE_EXTERN
int
SrcFile_Init(
LibGoblin_SrcFile *p_srcfile;
if( 0 != gi_max_src_file ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_FAILCALL, 0x01, 0x01 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_Init ),
+ errno, (QWord)gi_max_src_file , (QWord)0x00, __LINE__ );
return -0x01;
}
gp_src_file = (LibGoblin_SrcFile *)malloc(
sizeof( LibGoblin_SrcFile ) * LIBGOBLIN_SRCFILE_UNITS );
if( NULL == gp_src_file ) {
+ LibBrownie_Error_SetErrorInfo(
+ DRD64_ERROR( DRD64_ERROR_PTN_NOMEMORY, 0x01, 0x02 ),
+ LOCATION( FUNCID_LibGoblin_SrcFile_Init ),
+ errno, (QWord)0x00 , (QWord)0x00, __LINE__ );
return -0x02;
}
/*----------------------------------------------------------------------
OK
----------------------------------------------------------------------*/
+#define FUNCID_LibGoblin_SrcFile_Term 0x02
LIBGOBLIN_SRCFILE_EXTERN
int
SrcFile_Term(
LibGoblin_ProgramInfo *p_pginfo;
// Init ----
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = ProgInfo_Init();
CU_ASSERT( 0x00 == i_result );
i_result = ProgInfo_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
LibGoblin_ObjectInfo *p_objinfo;
// Init ----
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = ProgInfo_Init();
CU_ASSERT( 0x00 == i_result );
i_result = ProgInfo_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
int i_result;
LibGoblin_ProgramInfo *p_pginfo;
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = ProgInfo_Init();
CU_ASSERT( 0x00 == i_result );
i_result = ProgInfo_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
SrcFile_TestData *p_test;
SrcFile_TestData *p_now;
+ // Generate TestData ----
p_test = (SrcFile_TestData *)malloc( sizeof( SrcFile_TestData ) * 500 );
CU_ASSERT( NULL != p_test );
p_now->dw_hash = Common_CalcDJBhash( p_now->str_filename);
}
+ // Testing ---
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = SrcFile_Init();
CU_ASSERT( 0x00 == i_result );
i_result = SrcFile_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
int i_result;
LibGoblin_SrcFile *p_srcfile;
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = SrcFile_Init();
CU_ASSERT( 0x00 == i_result );
i_result = SrcFile_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
int i_result;
LibGoblin_SrcFile *p_srcfile;
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = SrcFile_Init();
CU_ASSERT( 0x00 == i_result );
i_result = SrcFile_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}
{
int i_result;
+ i_result = LibBrownie_Init();
+ CU_ASSERT( 0x00 == i_result );
+
i_result = SrcFile_Init();
CU_ASSERT( 0x00 == i_result );
i_result = SrcFile_Term();
CU_ASSERT( 0x00 == i_result );
+ LibBrownie_Term();
+
return;
}