//----------------------------------------------------------------------------
Object *ResourceManager::_LoadObject (const std::string &filename)
{
	Object *obj = 0;

	string::size_type pos = filename.find(".");
	if (pos == string::npos)
		return 0;

	std::string outPath;
	std::string outBaseName;
	std::string outExtention;
	StringHelp::SplitFullFilename(filename, outPath, outBaseName, outExtention);

	char *buffer = 0;
	int bufferSize = 0;

	if (GetBuffer(filename, bufferSize, buffer))
	{
		if ("png"==outExtention || "PNG"==outExtention)
		{
			obj = LoadTexFormOtherImagefile(outExtention, bufferSize, buffer);
		}
		else
		{
			InStream inStream;
			inStream.Load1(bufferSize, buffer);
			obj = inStream.GetObjectAt(0);
		}

		delete1(buffer);
		bufferSize = 0;
	}

	if (obj)
	{
		obj->SetResourcePath(filename);
	}

	return obj;
}