Resource* ResourceManager::Allocate(const char* transport, const char* address, const char* connection) { Resource* r = Find(transport, address, connection); if (r == NULL) { r = new Resource(transport, address, connection); fResources.AddItem(r); } else { r->Acquire(); } return r; }