// Shutter speed accessors / modifiers int getTv() { EdsError err = EDS_ERR_OK; EdsDataType dataType; EdsUInt32 dataSize; EdsInt32 Tv; err = EdsGetPropertySize(camera, kEdsPropID_Tv, 0, &dataType, &dataSize); if (!err) { err = EdsGetPropertyData(camera, kEdsPropID_Tv, 0, dataSize, &Tv); if (!err) { return Tv; } } return 0; }
CPropertyItem_Bracket::CPropertyItem_Bracket(EdsImageRef imageRef) { EdsUInt32 uValue; EdsRational rational; EdsDataType type; EdsUInt32 size; char value[EDS_MAX_NAME] = {0}; if( EDS_ERR_OK == EdsGetPropertyData( imageRef, kEdsPropID_Bracket, 0, sizeof(uValue),&uValue)) { char title[EDS_MAX_NAME] = {0}; switch(uValue) { case 1: { EdsGetPropertyData( imageRef, kEdsPropID_AEBracket, 0, sizeof(rational),&rational); if(rational.numerator==0) sprintf_s( value , EDS_MAX_NAME , "%d" , rational.numerator); else { sprintf_s( value , EDS_MAX_NAME , "%d/%d" , rational.numerator, rational.denominator ); } m_value.push_back(value); strcpy_s(m_title, EDS_MAX_NAME, "AE bracket"); break; } case 2: { EdsGetPropertyData( imageRef, kEdsPropID_ISOBracket, 0, sizeof(rational),&rational); if(rational.numerator==0) sprintf_s( value , EDS_MAX_NAME , "%d" , rational.numerator); else { sprintf_s( value , EDS_MAX_NAME , "%d/%d" , rational.numerator, rational.denominator ); } m_value.push_back(value); strcpy_s(m_title, EDS_MAX_NAME, "ISO bracket"); break; } case 3: { EdsInt32 WbBrakcet[3]; EdsGetPropertySize( imageRef, kEdsPropID_WhiteBalanceBracket, 0, &type,&size); EdsGetPropertyData( imageRef, kEdsPropID_WhiteBalanceBracket, 0, size, WbBrakcet); sprintf_s(value, EDS_MAX_NAME, "%d", WbBrakcet[0]); m_value.push_back(value); strcpy_s(m_title, EDS_MAX_NAME, "WB bracket mode"); switch(WbBrakcet[0]) { case 1: sprintf_s(value, EDS_MAX_NAME, "AB:%d", WbBrakcet[1]); break; case 2: sprintf_s(value, EDS_MAX_NAME, "GM:%d", WbBrakcet[2]); break; case 0:sprintf_s(value, EDS_MAX_NAME, "off"); break; default:sprintf_s(value , EDS_MAX_NAME , "Not Supported"); break; } m_value.push_back(value); break; } case 4: { EdsGetPropertyData( imageRef, kEdsPropID_FEBracket, 0, sizeof(rational),&rational); if(rational.numerator==0) sprintf_s( value , EDS_MAX_NAME , "%d" , rational.numerator); else { sprintf_s( value , EDS_MAX_NAME , "%d/%d" , rational.numerator, rational.denominator ); } m_value.push_back(value); strcpy_s(m_title, EDS_MAX_NAME, "FE bracket"); break; } default: { break; } } } }