Hi Josh,
To get attributes as strings you can do as follows:
char attributeValue[IMAQDX_MAX_API_STRING_LENGTH]
IMAQdxGetAttribute(session, "BitsPerPixel", IMAQdxValueTypeString, attributeValue);
The third parameter reflects not the attribute's type, but rather the API data type you are passing to GetAttribute. IMAQdx will do appropriate conversion (if possible) between the attribute's native type and the requested data type.
For your specific question regarding bits-per-pixel, it is a little inconvenient but we do not have an explicit attribute that will give you an integer number of bits in the resulting imagel. The "BitsPerPixel" is actually a hint to the decoder and display as to what the bit depth of the resulting image will be, and as you may be able to see in MAX it defaults to "use Hardware Value" (which for most firewire and all GigE cameras should be detected automatically). However, you can deduce the pixel depth from the "PixelFormat" attribute, which will return something like "Mono8" or "BayerBG10". On FireWire there is a VideoMode attribute that will give you a string description of the overall mode as well.
Hope this helps,
Eric