Example #1
0
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void
	MLRLightMap::TerminateClass()
{
	clipBuffer[1].Destroy();
	clipBuffer[0].Destroy();
	Unregister_Pointer(clipBuffer);
	delete [] clipBuffer;

	Unregister_Object(transformedCoords);
	delete transformedCoords;
	Unregister_Object(clipExtraCoords);
	delete clipExtraCoords;
	Unregister_Object(clipExtraColors);
	delete clipExtraColors;
	Unregister_Object(clipExtraTexCoords);
	delete clipExtraTexCoords;
	Unregister_Object(clippingStates);
	delete clippingStates;

	stream->Rewind();
	unsigned char *ptr = (unsigned char *)stream->GetPointer();

	Unregister_Object(stream);
	delete stream;
	stream = NULL;

	Unregister_Pointer(ptr);
	delete [] ptr;

	Unregister_Object(DefaultData);
	delete DefaultData;
	DefaultData = NULL;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void
	MLRIndexedTriangleCloud::TerminateClass()
{
	Unregister_Pointer(clipExtraIndex);
	delete clipExtraIndex;
	Unregister_Pointer(clipExtraTexCoords);
	delete clipExtraTexCoords;
	Unregister_Pointer(visibleIndexedVertices);
	delete visibleIndexedVertices;

	Unregister_Object(DefaultData);
	delete DefaultData;
	DefaultData = NULL;
}
Example #3
0
//
//###########################################################################
// ~Hash
//###########################################################################
//
Hash::~Hash()
{
	Check_Object(this);
	int i;

	for (i = 0; i < hashTableSize; i++)
	{
		Check_Pointer(hashTable);
		Verify_Index(i);
		if (hashTable[i] != NULL)
		{
			Unregister_Object(hashTable[i]);
			delete hashTable[i];
		}
	}

	Unregister_Pointer(hashTable);
	delete[] hashTable;
	hashTable = NULL;
	hashTableSize = 0;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void MLRTexturePool::Stop (void)
{
	Verify(gos_GetCurrentHeap() == Heap);

	int i;

	for(i=0;i<MLRState::TextureMask;i++)
	{
		if(textureArray[i] != NULL)
		{
			Unregister_Object(textureArray[i]);

			delete textureArray[i];

			textureArray[i] = NULL;
		}
	}

	Unregister_Pointer(freeHandle);
	delete [] freeHandle;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
MLRTexturePool::~MLRTexturePool()
{
	int i;

	for(i=0;i<MLRState::TextureMask;i++)
	{
		if(textureArray[i] != NULL)
		{
			Unregister_Object(textureArray[i]);

			delete textureArray[i];

			textureArray[i] = NULL;
		}
	}
	Unregister_Object(imagePool);
	delete imagePool;

	Unregister_Pointer(freeHandle);
	delete [] freeHandle;
}