Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 6651 in orxonox.OLD for trunk/src/util


Ignore:
Timestamp:
Jan 22, 2006, 2:22:48 PM (19 years ago)
Author:
bensch
Message:

orxonox/trunk: copy Resources from the ResourceManger (this is not as safe as with smart-pointers :( )

maybe implement:
http://ootips.org/yonat/4dev/counted_ptr.h

Location:
trunk/src/util/loading
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/util/loading/resource_manager.cc

    r6650 r6651  
    325325  else
    326326    return false;
     327}
     328
     329/**
     330 * tells the ResourceManager to generate a Copy of the Resource.
     331 * @brief resourcePointer: The Pointer to the resource to copy
     332 * @returns the Resource pointed to resourcePointer.
     333 */
     334BaseObject* ResourceManager::copy(BaseObject* resourcePointer)
     335{
     336  Resource* tmp = locateResourceByPointer(resourcePointer);
     337  if (tmp!=NULL)
     338  {
     339    tmp->count++;
     340    return tmp->pointer;
     341  }
     342  else
     343    return NULL;
    327344}
    328345
     
    543560 * @returns true if successful (pointer found, and deleted), false otherwise
    544561*/
    545 bool ResourceManager::unload(void* pointer, ResourcePriority prio)
     562bool ResourceManager::unload(BaseObject* pointer, ResourcePriority prio)
    546563{
    547564  if (pointer == NULL)
  • trunk/src/util/loading/resource_manager.h

    r6650 r6651  
    107107  bool cache(const char* fileName, ResourceType type, ResourcePriority prio = RP_NO,
    108108             const MultiType& param0 = MultiType(), const MultiType& param1 = MultiType(), const MultiType& param2 = MultiType());
     109  BaseObject* copy(BaseObject* resourcePointer);
    109110
    110111  BaseObject* load(const char* fileName, ResourcePriority prio = RP_NO,
     
    112113  BaseObject* load(const char* fileName, ResourceType type, ResourcePriority prio = RP_NO,
    113114                   const MultiType& param0 = MultiType(), const MultiType& param1 = MultiType(), const MultiType& param2 = MultiType());
    114   bool unload(void* pointer, ResourcePriority prio = RP_NO);
     115  bool unload(BaseObject* pointer, ResourcePriority prio = RP_NO);
    115116  bool unload(Resource* resource, ResourcePriority = RP_NO);
    116117  bool unloadAllByPriority(ResourcePriority prio);
Note: See TracChangeset for help on using the changeset viewer.