The custom refnums that semaphores, queues, and notifiers, and GOOP objects use are enumerated constants inside on a file refnum shell. The enumerated constants have one possible named state, which is thier name; however the U32 pointer is cast to the enum, so that it will have a value which can be non-zero. The semaphores, queues, and notifiers have fancy images, which have been added to the enumerations decoration component in the control editor.
Confused Yet?
If you would like to create your own objects and refnums, the easiest solution is the GOOP Wizard. It will walk you through the process and provides a core which creates, destroys, and manages objects for you.
Download it here:
http://zone.ni.com/devzone/conceptd.nsf/2d17d611efb58b22
862567a9006ffe76/5d7db42c91f392fc86256aae00463d78?OpenDocument
Good Luck,
Jim