Binary compatibility report for the INDI library between 0.7.2 and 0.8 versions on x86
Test Info
Library Name | INDI |
Version #1 | 0.7.2 |
Version #2 | 0.8 |
CPU Type | x86 |
GCC Version | 4.6.1 |
Test Results
Total Header Files | 11 |
Total Shared Libraries | 4 |
Total Symbols / Types | 201 / 114 |
Verdict | Incompatible (22.4%) |
Problem Summary
| Severity | Count |
---|
Added Symbols | - | 100 |
Removed Symbols | High | 5 |
Problems with Data Types | High | 12 |
Medium | 0 |
Low | 11 |
Problems with Symbols | High | 2 |
Medium | 0 |
Low | 2 |
Problems with Constants | Low | 1 |
Other Changes in Data Types | - | 2 |
Other Changes in Constants | - | 4 |
Added Symbols (100)
basedriver.h,
libindidriver.so
namespace INDI
BaseDriver::getProperty ( char const* name, enum BaseDriver::INDI_TYPE type )
[symbol: _ZN4INDI10BaseDriver11getPropertyEPKcNS0_9INDI_TYPEE]
BaseDriver::registerProperty ( void* p, enum BaseDriver::INDI_TYPE type )
[symbol: _ZN4INDI10BaseDriver16registerPropertyEPvNS0_9INDI_TYPEE]
defaultdriver.h,
libindidriver.so
namespace INDI
DefaultDriver::defineBLOB ( IBLOBVectorProperty* bvp )
[symbol: _ZN4INDI13DefaultDriver10defineBLOBEP20_IBLOBVectorProperty]
DefaultDriver::defineLight ( ILightVectorProperty* lvp )
[symbol: _ZN4INDI13DefaultDriver11defineLightEP21_ILightVectorProperty]
DefaultDriver::defineNumber ( INumberVectorProperty* nvp )
[symbol: _ZN4INDI13DefaultDriver12defineNumberEP22_INumberVectorProperty]
DefaultDriver::defineSwitch ( ISwitchVectorProperty* svp )
[symbol: _ZN4INDI13DefaultDriver12defineSwitchEP22_ISwitchVectorProperty]
DefaultDriver::defineText ( ITextVectorProperty* tvp )
[symbol: _ZN4INDI13DefaultDriver10defineTextEP20_ITextVectorProperty]
DefaultDriver::deleteProperty ( char const* propertyName )
[symbol: _ZN4INDI13DefaultDriver14deletePropertyEPKc]
DefaultDriver::initProperties ( )
[symbol: _ZN4INDI13DefaultDriver14initPropertiesEv]
DefaultDriver::RemoveTimer ( int p1 )
[symbol: _ZN4INDI13DefaultDriver11RemoveTimerEi]
DefaultDriver::setConnected ( bool status, enum IPState state, char const* msg )
[symbol: _ZN4INDI13DefaultDriver12setConnectedEb7IPStatePKc]
DefaultDriver::SetTimer ( int p1 )
[symbol: _ZN4INDI13DefaultDriver8SetTimerEi]
DefaultDriver::TimerHit ( )
[symbol: _ZN4INDI13DefaultDriver8TimerHitEv]
DefaultDriver::updateProperties ( )
[symbol: _ZN4INDI13DefaultDriver16updatePropertiesEv]
indiccd.h,
libindidriver.so
namespace INDI
CCD::AbortGuideExposure ( )
[symbol: _ZN4INDI3CCD18AbortGuideExposureEv]
CCD::CCD [in-charge] ( )
[symbol: _ZN4INDI3CCDC1Ev]
CCD::CCD [not-in-charge] ( )
[symbol: _ZN4INDI3CCDC2Ev]
CCD::ExposureComplete ( )
[symbol: _ZN4INDI3CCD16ExposureCompleteEv]
CCD::GuideEast ( float p1 )
[symbol: _ZN4INDI3CCD9GuideEastEf]
CCD::GuideExposureComplete ( )
[symbol: _ZN4INDI3CCD21GuideExposureCompleteEv]
CCD::GuideNorth ( float p1 )
[symbol: _ZN4INDI3CCD10GuideNorthEf]
CCD::GuideSouth ( float p1 )
[symbol: _ZN4INDI3CCD10GuideSouthEf]
CCD::GuideWest ( float p1 )
[symbol: _ZN4INDI3CCD9GuideWestEf]
CCD::initProperties ( )
[symbol: _ZN4INDI3CCD14initPropertiesEv]
CCD::ISGetProperties ( char const* dev )
[symbol: _ZN4INDI3CCD15ISGetPropertiesEPKc]
CCD::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )
[symbol: _ZN4INDI3CCD11ISNewNumberEPKcS2_PdPPci]
CCD::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )
[symbol: _ZN4INDI3CCD11ISNewSwitchEPKcS2_P7ISStatePPci]
CCD::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )
[symbol: _ZN4INDI3CCD9ISNewTextEPKcS2_PPcS4_i]
CCD::sendPreview ( )
[symbol: _ZN4INDI3CCD11sendPreviewEv]
CCD::SetCCDParams ( int x, int y, int bpp, float xf, float yf )
[symbol: _ZN4INDI3CCD12SetCCDParamsEiiiff]
CCD::SetFrameType ( int p1 )
[symbol: _ZN4INDI3CCD12SetFrameTypeEi]
CCD::SetGuidHeadParams ( int x, int y, int bpp, float xf, float yf )
[symbol: _ZN4INDI3CCD17SetGuidHeadParamsEiiiff]
CCD::StartExposure ( float duration )
[symbol: _ZN4INDI3CCD13StartExposureEf]
CCD::StartGuideExposure ( float duration )
[symbol: _ZN4INDI3CCD18StartGuideExposureEf]
CCD::updateProperties ( )
[symbol: _ZN4INDI3CCD16updatePropertiesEv]
CCD::uploadfile ( void* fitsdata, int total )
[symbol: _ZN4INDI3CCD10uploadfileEPvi]
CCD::~CCD [in-charge-deleting] ( )
[symbol: _ZN4INDI3CCDD0Ev]
CCD::~CCD [in-charge] ( )
[symbol: _ZN4INDI3CCDD1Ev]
CCD::~CCD [not-in-charge] ( )
[symbol: _ZN4INDI3CCDD2Ev]
indifilterwheel.h,
libindidriver.so
namespace INDI
FilterWheel::FilterWheel [in-charge] ( )
[symbol: _ZN4INDI11FilterWheelC1Ev]
FilterWheel::FilterWheel [not-in-charge] ( )
[symbol: _ZN4INDI11FilterWheelC2Ev]
FilterWheel::initProperties ( )
[symbol: _ZN4INDI11FilterWheel14initPropertiesEv]
FilterWheel::ISGetProperties ( char const* dev )
[symbol: _ZN4INDI11FilterWheel15ISGetPropertiesEPKc]
FilterWheel::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )
[symbol: _ZN4INDI11FilterWheel11ISNewNumberEPKcS2_PdPPci]
FilterWheel::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )
[symbol: _ZN4INDI11FilterWheel11ISNewSwitchEPKcS2_P7ISStatePPci]
FilterWheel::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )
[symbol: _ZN4INDI11FilterWheel9ISNewTextEPKcS2_PPcS4_i]
FilterWheel::QueryFilter ( )
[symbol: _ZN4INDI11FilterWheel11QueryFilterEv]
FilterWheel::SelectFilter ( int p1 )
[symbol: _ZN4INDI11FilterWheel12SelectFilterEi]
FilterWheel::SelectFilterDone ( int p1 )
[symbol: _ZN4INDI11FilterWheel16SelectFilterDoneEi]
FilterWheel::updateProperties ( )
[symbol: _ZN4INDI11FilterWheel16updatePropertiesEv]
FilterWheel::~FilterWheel [in-charge-deleting] ( )
[symbol: _ZN4INDI11FilterWheelD0Ev]
FilterWheel::~FilterWheel [in-charge] ( )
[symbol: _ZN4INDI11FilterWheelD1Ev]
FilterWheel::~FilterWheel [not-in-charge] ( )
[symbol: _ZN4INDI11FilterWheelD2Ev]
indifocuser.h,
libindidriver.so
namespace INDI
Focuser::Focuser [in-charge] ( )
[symbol: _ZN4INDI7FocuserC1Ev]
Focuser::Focuser [not-in-charge] ( )
[symbol: _ZN4INDI7FocuserC2Ev]
Focuser::initProperties ( )
[symbol: _ZN4INDI7Focuser14initPropertiesEv]
Focuser::ISGetProperties ( char const* dev )
[symbol: _ZN4INDI7Focuser15ISGetPropertiesEPKc]
Focuser::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )
[symbol: _ZN4INDI7Focuser11ISNewNumberEPKcS2_PdPPci]
Focuser::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )
[symbol: _ZN4INDI7Focuser11ISNewSwitchEPKcS2_P7ISStatePPci]
Focuser::Move ( int p1, int p2, int p3 )
[symbol: _ZN4INDI7Focuser4MoveEiii]
Focuser::updateProperties ( )
[symbol: _ZN4INDI7Focuser16updatePropertiesEv]
Focuser::~Focuser [in-charge-deleting] ( )
[symbol: _ZN4INDI7FocuserD0Ev]
Focuser::~Focuser [in-charge] ( )
[symbol: _ZN4INDI7FocuserD1Ev]
Focuser::~Focuser [not-in-charge] ( )
[symbol: _ZN4INDI7FocuserD2Ev]
inditelescope.h,
libindidriver.so
namespace INDI
Telescope::Connect ( )
[symbol: _ZN4INDI9Telescope7ConnectEv]
Telescope::Connect ( char const* p1 )
[symbol: _ZN4INDI9Telescope7ConnectEPKc]
Telescope::Disconnect ( )
[symbol: _ZN4INDI9Telescope10DisconnectEv]
Telescope::Goto ( double ra, double dec )
[symbol: _ZN4INDI9Telescope4GotoEdd]
Telescope::initProperties ( )
[symbol: _ZN4INDI9Telescope14initPropertiesEv]
Telescope::ISGetProperties ( char const* dev )
[symbol: _ZN4INDI9Telescope15ISGetPropertiesEPKc]
Telescope::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )
[symbol: _ZN4INDI9Telescope11ISNewNumberEPKcS2_PdPPci]
Telescope::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )
[symbol: _ZN4INDI9Telescope11ISNewSwitchEPKcS2_P7ISStatePPci]
Telescope::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )
[symbol: _ZN4INDI9Telescope9ISNewTextEPKcS2_PPcS4_i]
Telescope::NewRaDec ( double p1, double p2 )
[symbol: _ZN4INDI9Telescope8NewRaDecEdd]
Telescope::Park ( )
[symbol: _ZN4INDI9Telescope4ParkEv]
Telescope::ReadScopeStatus ( )
[symbol: _ZN4INDI9Telescope15ReadScopeStatusEv]
Telescope::Sync ( double ra, double dec )
[symbol: _ZN4INDI9Telescope4SyncEdd]
Telescope::Telescope [in-charge] ( )
[symbol: _ZN4INDI9TelescopeC1Ev]
Telescope::Telescope [not-in-charge] ( )
[symbol: _ZN4INDI9TelescopeC2Ev]
Telescope::TimerHit ( )
[symbol: _ZN4INDI9Telescope8TimerHitEv]
Telescope::updateProperties ( )
[symbol: _ZN4INDI9Telescope16updatePropertiesEv]
Telescope::~Telescope [in-charge-deleting] ( )
[symbol: _ZN4INDI9TelescopeD0Ev]
Telescope::~Telescope [in-charge] ( )
[symbol: _ZN4INDI9TelescopeD1Ev]
Telescope::~Telescope [not-in-charge] ( )
[symbol: _ZN4INDI9TelescopeD2Ev]
indiusbdevice.h,
libindidriver.so
namespace INDI
USBDevice::ControlMessage ( )
[symbol: _ZN4INDI9USBDevice14ControlMessageEv]
USBDevice::FindDevice ( int p1, int p2, int p3 )
[symbol: _ZN4INDI9USBDevice10FindDeviceEiii]
USBDevice::FindEndpoints ( )
[symbol: _ZN4INDI9USBDevice13FindEndpointsEv]
USBDevice::Open ( )
[symbol: _ZN4INDI9USBDevice4OpenEv]
USBDevice::ReadBulk ( char* p1, int p2, int p3 )
[symbol: _ZN4INDI9USBDevice8ReadBulkEPcii]
USBDevice::ReadInterrupt ( char* p1, int p2, int p3 )
[symbol: _ZN4INDI9USBDevice13ReadInterruptEPcii]
USBDevice::USBDevice [in-charge] ( )
[symbol: _ZN4INDI9USBDeviceC1Ev]
USBDevice::USBDevice [not-in-charge] ( )
[symbol: _ZN4INDI9USBDeviceC2Ev]
USBDevice::WriteBulk ( char* p1, int p2, int p3 )
[symbol: _ZN4INDI9USBDevice9WriteBulkEPcii]
USBDevice::WriteInterrupt ( char* p1, int p2, int p3 )
[symbol: _ZN4INDI9USBDevice14WriteInterruptEPcii]
USBDevice::~USBDevice [in-charge-deleting] ( )
[symbol: _ZN4INDI9USBDeviceD0Ev]
USBDevice::~USBDevice [in-charge] ( )
[symbol: _ZN4INDI9USBDeviceD1Ev]
USBDevice::~USBDevice [not-in-charge] ( )
[symbol: _ZN4INDI9USBDeviceD2Ev]
sp_counted_base_gcc_x86.hpp,
libindidriver.so
namespace boost::detail
sp_counted_base::destroy ( )
[symbol: _ZN5boost6detail15sp_counted_base7destroyEv]
sp_counted_base::~sp_counted_base [in-charge-deleting] ( )
[symbol: _ZN5boost6detail15sp_counted_baseD0Ev]
sp_counted_base::~sp_counted_base [in-charge] ( )
[symbol: _ZN5boost6detail15sp_counted_baseD1Ev]
to the top
Removed Symbols (5)
baseclient.h,
libindiclient.so
namespace INDI
BaseClient::~BaseClient [in-charge-deleting] ( )
[symbol: _ZN4INDI10BaseClientD0Ev]
basedriver.h,
libindidefaultdriver.so
namespace INDI
BaseDriver::getProperty ( char const* name, enum BaseDriver::INDI_TYPE& type )
[symbol: _ZN4INDI10BaseDriver11getPropertyEPKcRNS0_9INDI_TYPEE]
BaseDriver::~BaseDriver [in-charge-deleting] ( )
[symbol: _ZN4INDI10BaseDriverD0Ev]
vtable for BaseDriver [data]
[symbol: _ZTVN4INDI10BaseDriverE]
defaultdriver.h,
libindidefaultdriver.so
namespace INDI
DefaultDriver::setConnected ( bool status, char const* msg )
[symbol: _ZN4INDI13DefaultDriver12setConnectedEbPKc]
to the top
Problems with Data Types, High Severity (12)
baseclient.h
namespace INDI
[+] class BaseClient (1)
| Change |
Effect |
1 | Virtual method BaseClient::~BaseClient ( ) has been removed from this class. | The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
[+] show v-table (old and new)
Offset | Virtual Table (Old) - 13 entries | Virtual Table (New) - 11 entries |
---|
0 |
(int (*)(...))0 |
(int (*)(...))0 |
4 |
(int (*)(...))(& typeinfo) |
(int (*)(...))(& typeinfo) |
8 |
__cxa_pure_virtual |
__cxa_pure_virtual |
12 |
__cxa_pure_virtual |
__cxa_pure_virtual |
16 |
__cxa_pure_virtual |
__cxa_pure_virtual |
20 |
__cxa_pure_virtual |
__cxa_pure_virtual |
24 |
__cxa_pure_virtual |
__cxa_pure_virtual |
28 |
__cxa_pure_virtual |
__cxa_pure_virtual |
32 |
__cxa_pure_virtual |
__cxa_pure_virtual |
36 |
__cxa_pure_virtual |
__cxa_pure_virtual |
40 |
__cxa_pure_virtual |
__cxa_pure_virtual |
44 |
~BaseClient |
|
48 |
~BaseClient |
|
[+] affected symbols (1)
BaseClient::~BaseClient [in-charge] ( )This method is from 'BaseClient' class.
basedriver.h
namespace INDI
[+] class BaseDriver (3)
| Change |
Effect |
1 | Last virtual method BaseDriver::~BaseDriver ( ) has been removed from this class. | 1) The layout of type structure has been shifted by 4 bytes by the removed v-table pointer. 2) Size of class has been decreased by 4 bytes. |
2 | Virtual method BaseDriver::~BaseDriver ( ) has been removed from this class. | The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
3 | Virtual method BaseDriver::~BaseDriver ( ) has been removed from this class. | The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
[+] affected symbols (21)
BaseDriver::addMessage ( char const* msg )This method is from 'BaseDriver' class.
BaseDriver::BaseDriver [in-charge] ( )This constructor is from 'BaseDriver' class.
BaseDriver::buildProp ( XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::buildSkeleton ( char const* filename )This method is from 'BaseDriver' class.
BaseDriver::deviceName ( )This method is from 'BaseDriver' class.
BaseDriver::getBLOB ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getLight ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getNumber ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getSwitch ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getText ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::isConnected ( )This method is from 'BaseDriver' class.
BaseDriver::processBLOB ( struct IBLOB* blobEL, XMLEle* ep, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::removeProperty ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::setBLOB ( IBLOBVectorProperty* pp, XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::setDeviceName ( char const* dev )This method is from 'BaseDriver' class.
BaseDriver::setValue ( XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::~BaseDriver [in-charge] ( )This method is from 'BaseDriver' class.
DefaultDriver::ISGetProperties ( char const* dev )This method is from derived class 'DefaultDriver'.
DefaultDriver::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )This method is from derived class 'DefaultDriver'.
DefaultDriver::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )This method is from derived class 'DefaultDriver'.
DefaultDriver::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )This method is from derived class 'DefaultDriver'.
defaultdriver.h
namespace INDI
[+] class DefaultDriver (8)
| Change |
Effect |
1 | Size of this class has been increased from 668 bytes to 776 bytes. | 1) An object of this class can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighboring objects on the stack or heap. 2) The memory layout and size of subclasses will be changed. |
2 | Pure virtual method DefaultDriver::Connect ( ) has been added to this class. | 1) Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. 2) The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
3 | Pure virtual method DefaultDriver::Disconnect ( ) has been added to this class. | 1) Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. 2) The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
4 | Pure virtual method DefaultDriver::getDefaultName ( ) has been added to this class. | 1) Applications will not provide the implementation for this pure virtual method and therefore cause a crash in the library trying to call this method. 2) The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
5 | Virtual method DefaultDriver::TimerHit ( ) has been added to this class. | The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
6 | Virtual method DefaultDriver::deleteProperty ( char const* ) has been added to this class. | The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
7 | Virtual method DefaultDriver::setConnected ( bool, enum IPState, char const* ) has been added to this class. | The layout of v-table has been changed. Call of any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
8 | Virtual method DefaultDriver::setConnected ( bool, char const* ) has been removed from this class. | The layout of v-table has been changed. Call of this virtual method or any virtual method at higher position in this class or its subclasses may result in crash or incorrect behavior of applications. |
[+] show v-table (old and new)
Offset | Virtual Table (Old) - 9 entries | Virtual Table (New) - 16 entries |
---|
0 |
(int (*)(...))0 |
(int (*)(...))0 |
4 |
(int (*)(...))(& typeinfo) |
(int (*)(...))(& typeinfo) |
8 |
~DefaultDriver |
~DefaultDriver |
12 |
~DefaultDriver |
~DefaultDriver |
16 |
DefaultDriver::setConnected |
DefaultDriver::deleteProperty |
20 |
DefaultDriver::ISGetProperties |
DefaultDriver::setConnected |
24 |
DefaultDriver::ISNewSwitch |
DefaultDriver::TimerHit |
28 |
DefaultDriver::ISNewNumber |
DefaultDriver::ISGetProperties |
32 |
DefaultDriver::ISNewText |
DefaultDriver::ISNewSwitch |
36 |
|
DefaultDriver::ISNewNumber |
40 |
|
DefaultDriver::ISNewText |
44 |
|
DefaultDriver::initProperties |
48 |
|
DefaultDriver::updateProperties |
52 |
|
__cxa_pure_virtual |
56 |
|
__cxa_pure_virtual |
60 |
|
__cxa_pure_virtual |
[+] affected symbols (18)
DefaultDriver::addAuxControls ( )This method is from 'DefaultDriver' class.
DefaultDriver::addConfigurationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addDebugControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addSimulationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::DefaultDriver [in-charge] ( )This constructor is from 'DefaultDriver' class.
DefaultDriver::isDebug ( )This method is from 'DefaultDriver' class.
DefaultDriver::ISGetProperties ( char const* dev )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::isSimulation ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadDefaultConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::resetProperties ( )This method is from 'DefaultDriver' class.
DefaultDriver::saveConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::setDebug ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::setSimulation ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::~DefaultDriver [in-charge] ( )This method is from 'DefaultDriver' class.
to the top
Problems with Symbols, High Severity (2)
basedriver.h,
libindidefaultdriver.so
namespace INDI
[+] BaseDriver::getProperty ( char const* name, enum BaseDriver::INDI_TYPE& type ) (1)
changed to:BaseDriver::getProperty ( char const* name, enum BaseDriver::INDI_TYPE type )
[symbol: _ZN4INDI10BaseDriver11getPropertyEPKcRNS0_9INDI_TYPEE]
| Change | Effect |
---|
1 | Parameters list has been changed. | The name of the appropriate symbol for this function on binary level has been changed from _ZN4INDI10BaseDriver11getPropertyEPKcRNS0_9INDI_TYPEE to _ZN4INDI10BaseDriver11getPropertyEPKcNS0_9INDI_TYPEE. This may cause "undefined reference" linker error in old client applications. |
defaultdriver.h,
libindidefaultdriver.so
namespace INDI
[+] DefaultDriver::setConnected ( bool status, char const* msg ) (1)
changed to:DefaultDriver::setConnected ( bool status, enum IPState state, char const* msg )
[symbol: _ZN4INDI13DefaultDriver12setConnectedEbPKc]
| Change | Effect |
---|
1 | Parameters list has been changed. | The name of the appropriate symbol for this function on binary level has been changed from _ZN4INDI13DefaultDriver12setConnectedEbPKc to _ZN4INDI13DefaultDriver12setConnectedEb7IPStatePKc. This may cause "undefined reference" linker error in old client applications. |
to the top
Problems with Data Types, Low Severity (11)
basedriver.h
namespace INDI
[+] class BaseDriver (9)
| Change |
Effect |
1 | Size of this type has been changed from 120 bytes to 68 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
2 | The relative position of private field lp has been changed from 1 to 2. | Size of the inclusive type has been changed. |
3 | The relative position of private field pAll has been changed from 2 to 1. | Size of the inclusive type has been changed. |
4 | Type of field pAll has been changed from std::vector<struct BaseDriver::pOrder> (12 bytes) to std::map<boost::shared_ptr<void>,enum BaseDriver::INDI_TYPE> (24 bytes). | Size of the inclusive type has been changed. |
5 | Field pBlobs has been removed from this type. | Size of the inclusive type has been changed. |
6 | Field pLights has been removed from this type. | Size of the inclusive type has been changed. |
7 | Field pNumbers has been removed from this type. | Size of the inclusive type has been changed. |
8 | Field pSwitches has been removed from this type. | Size of the inclusive type has been changed. |
9 | Field pTexts has been removed from this type. | Size of the inclusive type has been changed. |
[+] affected symbols (23)
BaseClient::addDevice ( XMLEle* dep, char* errmsg )Return value (pointer) has base type 'BaseDriver'.
BaseClient::checkMsg ( XMLEle* root, BaseDriver* dp )2nd parameter 'dp' (pointer) has base type 'BaseDriver'.
BaseClient::doMsg ( XMLEle* msg, BaseDriver* dp )2nd parameter 'dp' (pointer) has base type 'BaseDriver'.
BaseClient::findDev ( XMLEle* root, int create, char* errmsg )Return value (pointer) has base type 'BaseDriver'.
BaseClient::findDev ( char const* devName, char* errmsg )Return value (pointer) has base type 'BaseDriver'.
BaseClient::getDriver ( char const* deviceName )Return value (pointer) has base type 'BaseDriver'.
BaseDriver::addMessage ( char const* msg )This method is from 'BaseDriver' class.
BaseDriver::BaseDriver [in-charge] ( )This constructor is from 'BaseDriver' class.
BaseDriver::buildProp ( XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::buildSkeleton ( char const* filename )This method is from 'BaseDriver' class.
BaseDriver::deviceName ( )This method is from 'BaseDriver' class.
BaseDriver::getBLOB ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getLight ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getNumber ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getSwitch ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::getText ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::isConnected ( )This method is from 'BaseDriver' class.
BaseDriver::processBLOB ( struct IBLOB* blobEL, XMLEle* ep, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::removeProperty ( char const* name )This method is from 'BaseDriver' class.
BaseDriver::setBLOB ( IBLOBVectorProperty* pp, XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::setDeviceName ( char const* dev )This method is from 'BaseDriver' class.
BaseDriver::setValue ( XMLEle* root, char* errmsg )This method is from 'BaseDriver' class.
BaseDriver::~BaseDriver [in-charge] ( )This method is from 'BaseDriver' class.
defaultdriver.h
namespace INDI
[+] class DefaultDriver (2)
| Change |
Effect |
1 | Field ConnectionS has been added to this type. | 1) This field will not be initialized by old clients. 2) Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
2 | Field ConnectionSP has been added to this type. | 1) This field will not be initialized by old clients. 2) Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
[+] affected symbols (18)
DefaultDriver::addAuxControls ( )This method is from 'DefaultDriver' class.
DefaultDriver::addConfigurationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addDebugControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addSimulationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::DefaultDriver [in-charge] ( )This constructor is from 'DefaultDriver' class.
DefaultDriver::isDebug ( )This method is from 'DefaultDriver' class.
DefaultDriver::ISGetProperties ( char const* dev )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::isSimulation ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadDefaultConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::resetProperties ( )This method is from 'DefaultDriver' class.
DefaultDriver::saveConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::setDebug ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::setSimulation ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::~DefaultDriver [in-charge] ( )This method is from 'DefaultDriver' class.
to the top
Problems with Symbols, Low Severity (2)
baseclient.h,
libindiclient.so
namespace INDI
[+] BaseClient::disconnectServer ( ) (1)
[symbol: _ZN4INDI10BaseClient16disconnectServerEv]
| Change | Effect |
---|
1 | Type of return value has been changed from void to bool (1 byte). | Replacement of return type may indicate a change in its semantic meaning. |
[+] BaseClient::setBLOBMode ( enum BLOBHandling blobH, char const* dev, char const* prop ) (1)
[symbol: _ZN4INDI10BaseClient11setBLOBModeE12BLOBHandlingPKcS3_]
| Change | Effect |
---|
1 | The default argument "0" of 2nd parameter dev has been removed. | Applications will pass an old default argument (that is not default any more) that may not be properly handled anymore. This may result in crash or incorrect behavior of applications. |
to the top
Problems with Constants, Low Severity (1)
indiapi.h
[+] INDI_LIBV
| Change | Effect |
---|
1 | The value of constant INDI_LIBV has been changed from 0.7 to 0.8. | Applications will pass an old value of this constant as the parameter to the new-version library functions, that expect a new one. This may result in crash of incorrect behavior of applications. |
to the top
Other Changes in Data Types (2)
defaultdriver.h
namespace INDI
[+] class DefaultDriver (2)
| Change |
Effect |
1 | Virtual method DefaultDriver::initProperties ( ) has been added to this class. | No effect. You can add virtual functions at end of leaf classes with exported constructors. |
2 | Virtual method DefaultDriver::updateProperties ( ) has been added to this class. | No effect. You can add virtual functions at end of leaf classes with exported constructors. |
[+] show v-table (old and new)
Offset | Virtual Table (Old) - 9 entries | Virtual Table (New) - 16 entries |
---|
0 |
(int (*)(...))0 |
(int (*)(...))0 |
4 |
(int (*)(...))(& typeinfo) |
(int (*)(...))(& typeinfo) |
8 |
~DefaultDriver |
~DefaultDriver |
12 |
~DefaultDriver |
~DefaultDriver |
16 |
DefaultDriver::setConnected |
DefaultDriver::deleteProperty |
20 |
DefaultDriver::ISGetProperties |
DefaultDriver::setConnected |
24 |
DefaultDriver::ISNewSwitch |
DefaultDriver::TimerHit |
28 |
DefaultDriver::ISNewNumber |
DefaultDriver::ISGetProperties |
32 |
DefaultDriver::ISNewText |
DefaultDriver::ISNewSwitch |
36 |
|
DefaultDriver::ISNewNumber |
40 |
|
DefaultDriver::ISNewText |
44 |
|
DefaultDriver::initProperties |
48 |
|
DefaultDriver::updateProperties |
52 |
|
__cxa_pure_virtual |
56 |
|
__cxa_pure_virtual |
60 |
|
__cxa_pure_virtual |
[+] affected symbols (18)
DefaultDriver::addAuxControls ( )This method is from 'DefaultDriver' class.
DefaultDriver::addConfigurationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addDebugControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::addSimulationControl ( )This method is from 'DefaultDriver' class.
DefaultDriver::DefaultDriver [in-charge] ( )This constructor is from 'DefaultDriver' class.
DefaultDriver::isDebug ( )This method is from 'DefaultDriver' class.
DefaultDriver::ISGetProperties ( char const* dev )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewNumber ( char const* dev, char const* name, double* values, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewSwitch ( char const* dev, char const* name, enum ISState* states, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::ISNewText ( char const* dev, char const* name, char** texts, char** names, int n )This method is from 'DefaultDriver' class.
DefaultDriver::isSimulation ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::loadDefaultConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::resetProperties ( )This method is from 'DefaultDriver' class.
DefaultDriver::saveConfig ( )This method is from 'DefaultDriver' class.
DefaultDriver::setDebug ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::setSimulation ( bool enable )This method is from 'DefaultDriver' class.
DefaultDriver::~DefaultDriver [in-charge] ( )This method is from 'DefaultDriver' class.
to the top
Other Changes in Constants (4)
indiccd.h
[+] FRAME_TYPE_BIAS
| Change | Effect |
---|
1 | The constant FRAME_TYPE_BIAS with value 1 has been added. | No effect. |
[+] FRAME_TYPE_DARK
| Change | Effect |
---|
1 | The constant FRAME_TYPE_DARK with value 2 has been added. | No effect. |
[+] FRAME_TYPE_FLAT
| Change | Effect |
---|
1 | The constant FRAME_TYPE_FLAT with value 3 has been added. | No effect. |
[+] FRAME_TYPE_LIGHT
| Change | Effect |
---|
1 | The constant FRAME_TYPE_LIGHT with value 0 has been added. | No effect. |
to the top
Header Files (11)
base64.h
baseclient.h
basedriver.h
defaultdriver.h
eventloop.h
indiapi.h
indibase.h
indicom.h
indidevapi.h
indidriver.h
lilxml.h
to the top
Shared Libraries (4)
libindi.so.0.7.2
libindibasedriver.so
libindiclient.so
libindidefaultdriver.so
to the top