/* Print implementation */
void _Stg_ObjectList_Print( void* objectList, struct Stream* stream ) {
   Stg_ObjectList* self = (Stg_ObjectList*) objectList;

   /* General info */
   Journal_Printf( stream, "Stg_ObjectList (ptr):%p\n", (void*)self );
   Stream_Indent( stream );
   
   /* Print parent class */
   _Stg_Class_Print( self, stream );

   /* Virtual info */
   Journal_Printf( stream, "_append(func ptr): %p\n", (void*)self->_append );
   Journal_Printf( stream, "_prepend(func ptr): %p\n", (void*)self->_prepend );
   Journal_Printf( stream, "_replaceAll(func ptr): %p\n", (void*)self->_replaceAll );
   Journal_Printf( stream, "_replace(func ptr): %p\n", (void*)self->_replace );
   Journal_Printf( stream, "_insertBefore(func ptr): %p\n", (void*)self->_insertBefore );
   Journal_Printf( stream, "_insertAfter(func ptr): %p\n", (void*)self->_insertAfter );
   Journal_Printf( stream, "_remove(func ptr): %p\n", (void*)self->_remove );
   Journal_Printf( stream, "_getIndex(func ptr): %p\n", (void*)self->_getIndex );
   Journal_Printf( stream, "_get(func ptr): %p\n", (void*)self->_get );
   Journal_Printf( stream, "_allocMoreMemory(func ptr): %p\n", (void*)self->_allocMoreMemory );
   Journal_Printf( stream, "_insertAtIndex(func ptr): %p\n", (void*)self->_insertAtIndex );
   Journal_Printf( stream, "_removeByIndex(func ptr): %p\n", (void*)self->_removeByIndex );
   Journal_Printf( stream, "_deleteAllObjects(func ptr): %p\n", (void*)self->_deleteAllObjects );

   /* Stg_ObjectList */
   Journal_Printf( stream, "_size: %u\n", self->_size );
   Journal_Printf( stream, "_delta: %u\n", self->_delta );
   Journal_Printf( stream, "_noJournalingInCopy: %u\n", self->_noJournalingInCopy );
   Journal_Printf( stream, "count: %u\n", self->count );
   Journal_Printf( stream, "data[0-%d]:\n", self->count );
   Stg_ObjectList_PrintAllObjects( self, stream );
   
   Stream_UnIndent( stream );
}
Esempio n. 2
0
int main(int argc, char *argv[])
{
	int			rank;
	int			procCount;
	int			procToWatch;
	Stream*			stream;

	/* Initialise MPI, get world info */
	MPI_Init(&argc, &argv);
	MPI_Comm_size(MPI_COMM_WORLD, &procCount);
	MPI_Comm_rank(MPI_COMM_WORLD, &rank);

	BaseFoundation_Init( &argc, &argv );

	RegressionTest_Init( "Base/Foundation/PrimitiveObject" );

	stream = Journal_Register( "info", "myStream" );
	
	if( argc >= 2 ) {
		procToWatch = atoi( argv[1] );
	}
	else {
		procToWatch = 0;
	}

	{
		Stg_ObjectList* list;

		list = Stg_ObjectList_New();

		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_UnsignedChar( 'a', "char item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_UnsignedShort( 123, "short item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_UnsignedInt( 456, "int item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_UnsignedLong( 789, "long item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Char( 'a', "char item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Short( -123, "short item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Int( -456, "int item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Long( -789, "long item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Float( 1.2f, "float item" ) );
		Stg_ObjectList_Append( list, Stg_PrimitiveObject_New_Double( 2.4, "double item" ) );

		Stg_ObjectList_PrintAllObjects( list, stream );

		Stg_Class_Delete( list );
	}
	
	RegressionTest_Finalise();
	BaseFoundation_Finalise();
	
	/* Close off MPI */
	MPI_Finalize();
	
	return 0; /* success */
}