title: Creating instance of an extended class from an instance of its parent
body: <p><strong>Some background first:</strong></p>
  
  <p>I am extending CLBeacon in order to add some extra fields and functionality. </p>
  
  <p>The header of the extended class looks like this</p>
  
  <pre><code>#import &lt;CoreLocation/CoreLocation.h&gt;
  
  @interface CXBeacon : CLBeacon
  
  @property (readonly) NSString * signature;
  
  //..... some additional methods here .....
  
  @end
  </code></pre>
  
  <p>Then I'm using CLLocationManager to find nearby CLBeacons, etc.</p>
  
  <p>The question is, since CLLocationManager's delegate methods pass in instances of CLBeacon, how do I convert those to CXBeacon? Can I just cast CLBeacon as CXBeacon and call it a day? or is there a concept that I'm missing that applies in this cases?</p>