I am writing a Cocoa application for accessing a serial device.
(IOKit) In
order to do this, you need to translate between CF and NS data
types. (I
believe)
For instance:
CFMutableArrayRef devicePaths = CFArrayCreateMutable(NULL, 0,
NULL);
GetSerialPortPaths(serialServices, devicePaths); // Fills in
CFMutableArray
serialPorts = (NSMutableArray *) devicePaths;
//CFRelease(devicePaths);
printf("Found %d serial ports\n", [serialPorts count]);
The problem: I found that if you release the CFMutableArray, you
also loose
the NSMutableArray
Yep, because you're merely casting types, you're not creating a new
object.
Question:
1. Where can I get a better understanding of the data conversion
between
these different frameworks?
2. Ultimately the device path names will appear in a ComboBox. Was it
necessary to convert the CFMutableArray to a NSMutableArray for the
datasource function?
I don't know about "necessary", but it's certainly convenient, because
then you can use the (IMO) more convenient accessors of NSArray.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com