Specifically, I would like to be able to access the actual color profiles the user has chosen as the default RGB and Grayscale color spaces, so I can do the same things as Photoshop with untagged images. I'm defining functionality to be similar to that of Photoshop itself when Photoshop does not provide a pointer to a document color profile via gFilterRecord->iCCprofileData.
I'm thinking along these lines:
1. Detect if Photoshop is the host, and if not, stop and use internal defaults (e.g., sRGB).
2. Use the property suite to ask Photoshop what the user's prefs for the appropriate color category is, depending on the image mode received.
What I don't know are the specifics, nor whether Photoshop is likely to provide a pointer to the profile in memory or whether I'll have to go open it myself (either way would be no problem).
Do you know any of the specific callbacks I'll need to code?
Meanwhile I'll be scouring the documentation.
Well, that existing file has no profile attached. How do I interpret it?
At the moment, I interpret untagged images as per the Photoshop default settings (sRGB, DG 20%), but some folks might change those. I suppose I'll just have to explain how the information isn't avaialable if someone should notice. I suspect most folks who actually care about color management will not be trying to work on untagged images anyway...
Hmm, we'd have to add something to the API to support getting the default colorspace profiles (and policies).
Probably easiest if you just file a feature request and explain what you're trying to do.
Europe, Middle East and Africa