When someone want to change struct soap attribute, such as soap::connect_timeout to get a more friendly experience when destination port is closed, there are no means to achieve this, because OnvifClientDevice class member variable DeviceBindingProxy deviceBindProxy; is private, and no method to get/set it. I think make these variable protected, and we can then inherit class OnvifClientDevice to custom soap attribute through DeviceBindingProxy deviceBindProxy; I do think this will make library more extendable or is there any problem I didn't consider?
Appreciate your answers.