Bent Normann Olsen wrote:
I'm new to Mac development environment, and I was looking thru the
CoreMIDI/MIDIServices.h, to see how much work it's going to take (at least
maybe partially) to implement some of the functions to own projects. I hit
the wall with some typedef, for example "struct OpaqueMIDIClient *
MIDIClientRef", and I now understand that Apple do not always want
developers to know what is behind some type definitions. Is this true?
As an aside - a lot of why Apple does this in Carbon stems back to the old MacOS 9.x heritage. In the old pre 10,x system, the memory manager forced the programmer to refer to data by "handles" that were references to pointers. This was historical and was originally because of the funky things it did with shuffling pointers around in memory to handle the fact that the early hardware (Mac 128 for example) was only barely able to run the OS within the memory constraints of the hardware. PowerPC might have altered this, dunno, but the basic OS worked on that premise for 68000 at least. Carbon should have minimised the madness, but I guess some still persists?
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to