UName
Name
UName --  A class used to generate unique names (e.g. "critter1", "critter2" etc.)
Description
 This class is used to generate unique names (agent0, agent1, agent2...) for objects in a simulation. The user will typically create an instance of the UName class initialized with a baseName presented either as a (const char *) or an object of class String. The user can then request new names, again either as (const char *)'s or as instances of the String class. The user can also reset the counter used to generate the names in case s/he wants to restart naming objects with the same baseName.
 Note: Both in the case of initialization by (const char *) and initialization by an instance of the String class, the original is copied not stored internally so it is up to the user to free the original (const char *) or String instance if/when necessary!
Methods
Phase: Creating
- -  setBaseNameObject: aStringObject-  The setBaseNameObject: method is used to set the base name given an object of class String. 
- -  setBaseName:-  (const char *) aString-  The setBaseName: method is used to set the base name given a const char *. 
- +  create:-  (id <Zone>) aZone setBaseNameObject: aStringObject-  The create:setBaseNameObject: method is used to create an instance of the UName class and set the base name given an object of class String. This  method will automatically reset the counter. 
- +  create:-  (id <Zone>) aZone setBaseName:-  (const char *) aString-  The create:setBaseNameObject: method is used to create an instance of the UName class and set the base name given a const char *.  This method will  automatically reset the counter. 
Phase: Using
- -  resetCounter-  Resets the counter used as a suffix in the unique names generated. 
- -  getNewNameObject-  The getNewNameObject generates a new name as a String Object. 
- - (const char *) getNewName-  The getNewName method generates a new name as a character string.