Binary compatibility report for the INDI library  between 0.9.1 and 0.9.5 versions on x86

Test Info


Library NameINDI
Version #10.9.1
Version #20.9.5
CPU Typex86
GCC Version4.6.1

Test Results


Total Header Files18
Total Shared Libraries4
Total Symbols / Types356 / 187
VerdictIncompatible
(44.8%)

Problem Summary


SeverityCount
Added Symbols-92
Removed SymbolsHigh72
Problems with
Data Types
High12
Medium1
Low6
Problems with
Symbols
High3
Medium3
Low3
Problems with
Constants
Low0
Other Changes
in Symbols
-4

Added Symbols (92)


baseclient.h, libindiclient.so
namespace INDI
BaseClient::connectDevice char const* deviceName )
BaseClient::disconnectDevice char const* deviceName )
BaseClient::getDevice char const* deviceName )
BaseClient::sendNewNumber ( char const* deviceName, char const* propertyName, char const* elementName, double value )
BaseClient::sendNewSwitch ( char const* deviceName, char const* propertyName, char const* elementName )
BaseClient::sendNewSwitch ISwitchVectorProperty* pp )
BaseClient::sendNewText ( char const* deviceName, char const* propertyName, char const* elementName, char const* text )
BaseClient::sendOneBlob ( char const* blobName, unsigned int blobSize, char const* blobFormat, void* blobBuffer )

basedevice.h, libindidriver.so
namespace INDI
BaseDevice::addMessage char const* msg )
BaseDevice::BaseDevice [in-charge] ( )
BaseDevice::BaseDevice [not-in-charge] ( )
BaseDevice::buildProp XMLEle* root, char* errmsg )
BaseDevice::buildSkeleton char const* filename )
BaseDevice::checkMessage XMLEle* root )
BaseDevice::doMessage XMLEle* msg )
BaseDevice::getBLOB char const* name )
BaseDevice::getDeviceName ( )
BaseDevice::getLight char const* name )
BaseDevice::getNumber char const* name )
BaseDevice::getProperty ( char const* name, enum INDI_TYPE type )
BaseDevice::getRawProperty ( char const* name, enum INDI_TYPE type )
BaseDevice::getSwitch char const* name )
BaseDevice::getText char const* name )
BaseDevice::isConnected ( )
BaseDevice::lastMessage ( )
BaseDevice::messageQueue int index )
BaseDevice::registerProperty void* p, enum INDI_TYPE type )
BaseDevice::removeProperty ( char const* name, char* errmsg )
BaseDevice::setBLOB ( IBLOBVectorProperty* pp, XMLEle* root, char* errmsg )
BaseDevice::setDeviceName char const* dev )
BaseDevice::setValue XMLEle* root, char* errmsg )
BaseDevice::~BaseDevice [in-charge] ( )
BaseDevice::~BaseDevice [not-in-charge] ( )

defaultdevice.h, libindidriver.so
namespace INDI
DefaultDevice::addAuxControls ( )
DefaultDevice::addConfigurationControl ( )
DefaultDevice::addDebugControl ( )
DefaultDevice::addSimulationControl ( )
DefaultDevice::DefaultDevice [in-charge] ( )
DefaultDevice::DefaultDevice [not-in-charge] ( )
DefaultDevice::defineBLOB IBLOBVectorProperty* bvp )
DefaultDevice::defineLight ILightVectorProperty* lvp )
DefaultDevice::defineNumber INumberVectorProperty* nvp )
DefaultDevice::defineSwitch ISwitchVectorProperty* svp )
DefaultDevice::defineText ITextVectorProperty* tvp )
DefaultDevice::deleteProperty char const* propertyName )
DefaultDevice::initProperties ( )
DefaultDevice::isDebug ( )
DefaultDevice::ISGetProperties char const* dev )
DefaultDevice::ISNewBLOB char const* dev, char const* name, int* sizes, int* blobsizes, char** blobs, char** formats, char** names, int n )
DefaultDevice::ISNewNumber char const* dev, char const* name, double* values, char** names, int n )
DefaultDevice::ISNewSwitch char const* dev, char const* name, enum ISState* states, char** names, int n )
DefaultDevice::ISNewText char const* dev, char const* name, char** texts, char** names, int n )
DefaultDevice::isSimulation ( )
DefaultDevice::ISSnoopDevice XMLEle* root )
DefaultDevice::loadConfig ( )
DefaultDevice::loadDefaultConfig ( )
DefaultDevice::RemoveTimer int id )
DefaultDevice::resetProperties ( )
DefaultDevice::saveConfig ( )
DefaultDevice::saveConfigItems FILE* fp )
DefaultDevice::setConnected bool status, enum IPState state, char const* msg )
DefaultDevice::setDebug bool enable )
DefaultDevice::setSimulation bool enable )
DefaultDevice::SetTimer int ms )
DefaultDevice::TimerHit ( )
DefaultDevice::updateProperties ( )
DefaultDevice::~DefaultDevice [in-charge-deleting] ( )
DefaultDevice::~DefaultDevice [in-charge] ( )
DefaultDevice::~DefaultDevice [not-in-charge] ( )

indidevapi.h, libindi.so.0.9.5
IUFindOnSwitchIndex ISwitchVectorProperty const* sp )

indidevapi.h, libindimain.so
IUSaveBLOB ( struct IBLOB* bp, int size, int blobsize, char* blob, char* format )
IUUpdateBLOB ( IBLOBVectorProperty* bvp, int* sizes, int* blobsizes, char** blobs, char** formats, char** names, int n )

indifilterwheel.h, libindidriver.so
namespace INDI
FilterWheel::GetFilterNames char const* groupName )

indiproperty.h, libindidriver.so
namespace INDI
Property::getBLOB ( )
Property::getDeviceName ( )
Property::getGroupName ( )
Property::getLabel ( )
Property::getLight ( )
Property::getName ( )
Property::getNumber ( )
Property::getPermission ( )
Property::getState ( )
Property::getSwitch ( )
Property::getText ( )
Property::Property [in-charge] ( )
Property::Property [not-in-charge] ( )
Property::setDynamic bool d )
Property::setProperty void* p1 )
Property::setRegistered bool r )
Property::setType enum INDI_TYPE t )
Property::~Property [in-charge] ( )
Property::~Property [not-in-charge] ( )

to the top

Removed Symbols (72)


baseclient.h, libindiclient.so
namespace INDI
BaseClient::checkMsg XMLEle* root, BaseDriver* dp )
BaseClient::doMsg XMLEle* msg, BaseDriver* dp )
BaseClient::getDriver char const* deviceName )
BaseClient::sendNewSwitch ( ISwitchVectorProperty* pp, struct ISwitch* lp )
BaseClient::sendOneBlob ( char const* blobName, unsigned int blobSize, char const* blobFormat, unsigned char* blobBuffer )

basedriver.h, libindidriver.so
PropertyContainer::PropertyContainer [in-charge] ( )
PropertyContainer::PropertyContainer [not-in-charge] ( )
PropertyContainer::setDynamic bool d )
PropertyContainer::setProperty void* p1 )
PropertyContainer::setRegistered bool r )
PropertyContainer::setType enum PropertyContainer::INDI_TYPE t )
PropertyContainer::~PropertyContainer [in-charge] ( )
PropertyContainer::~PropertyContainer [not-in-charge] ( )
basedriver.h, libindidriver.so
namespace INDI
BaseDriver::addMessage char const* msg )
BaseDriver::BaseDriver [in-charge] ( )
BaseDriver::BaseDriver [not-in-charge] ( )
BaseDriver::buildProp XMLEle* root, char* errmsg )
BaseDriver::buildSkeleton char const* filename )
BaseDriver::deviceName ( )
BaseDriver::getBLOB char const* name )
BaseDriver::getContainer ( char const* name, enum PropertyContainer::INDI_TYPE type )
BaseDriver::getLight char const* name )
BaseDriver::getNumber char const* name )
BaseDriver::getProperty ( char const* name, enum PropertyContainer::INDI_TYPE type )
BaseDriver::getSwitch char const* name )
BaseDriver::getText char const* name )
BaseDriver::isConnected ( )
BaseDriver::processBLOB ( struct IBLOB* blobEL, XMLEle* ep, char* errmsg )
BaseDriver::registerProperty void* p, enum PropertyContainer::INDI_TYPE type )
BaseDriver::removeProperty char const* name )
BaseDriver::setBLOB ( IBLOBVectorProperty* pp, XMLEle* root, char* errmsg )
BaseDriver::setDeviceName char const* dev )
BaseDriver::setValue XMLEle* root, char* errmsg )
BaseDriver::~BaseDriver [in-charge] ( )
BaseDriver::~BaseDriver [not-in-charge] ( )

defaultdriver.h, libindidriver.so
namespace INDI
DefaultDriver::addAuxControls ( )
DefaultDriver::addConfigurationControl ( )
DefaultDriver::addDebugControl ( )
DefaultDriver::addSimulationControl ( )
DefaultDriver::DefaultDriver [in-charge] ( )
DefaultDriver::DefaultDriver [not-in-charge] ( )
DefaultDriver::defineBLOB IBLOBVectorProperty* bvp )
DefaultDriver::defineLight ILightVectorProperty* lvp )
DefaultDriver::defineNumber INumberVectorProperty* nvp )
DefaultDriver::defineSwitch ISwitchVectorProperty* svp )
DefaultDriver::defineText ITextVectorProperty* tvp )
DefaultDriver::deleteProperty char const* propertyName )
DefaultDriver::initProperties ( )
DefaultDriver::isDebug ( )
DefaultDriver::ISGetProperties char const* dev )
DefaultDriver::ISNewNumber char const* dev, char const* name, double* values, char** names, int n )
DefaultDriver::ISNewSwitch char const* dev, char const* name, enum ISState* states, char** names, int n )
DefaultDriver::ISNewText char const* dev, char const* name, char** texts, char** names, int n )
DefaultDriver::isSimulation ( )
DefaultDriver::loadConfig ( )
DefaultDriver::loadDefaultConfig ( )
DefaultDriver::RemoveTimer int id )
DefaultDriver::resetProperties ( )
DefaultDriver::saveConfig ( )
DefaultDriver::saveConfigItems FILE* fp )
DefaultDriver::setConnected bool status, enum IPState state, char const* msg )
DefaultDriver::setDebug bool enable )
DefaultDriver::setSimulation bool enable )
DefaultDriver::SetTimer int ms )
DefaultDriver::TimerHit ( )
DefaultDriver::updateProperties ( )
DefaultDriver::~DefaultDriver [in-charge-deleting] ( )
DefaultDriver::~DefaultDriver [in-charge] ( )
DefaultDriver::~DefaultDriver [not-in-charge] ( )
vtable for DefaultDriver [data]

indifilterwheel.h, libindidriver.so
namespace INDI
FilterWheel::GetFilterNames ( char const* deviceName, char const* groupName )
FilterWheel::ISSnoopDevice XMLEle* root )

to the top

Problems with Data Types, High Severity (12)


indibase.h
namespace INDI
[+] class BaseMediator (2)

indiccd.h
namespace INDI
[+] class CCD (3)

indifilterwheel.h
namespace INDI
[+] class FilterWheel (2)

indifocuser.h
namespace INDI
[+] class Focuser (2)

inditelescope.h
namespace INDI
[+] class Telescope (3)

to the top

Problems with Symbols, High Severity (3)


baseclient.h, libindiclient.so
namespace INDI
[+] BaseClient::sendNewSwitch ( ISwitchVectorProperty* pp, struct ISwitch* lp ) (1)
[+] BaseClient::sendOneBlob ( char const* blobName, unsigned int blobSize, char const* blobFormat, unsigned char* blobBuffer ) (1)

indifilterwheel.h, libindidriver.so
namespace INDI
[+] FilterWheel::GetFilterNames ( char const* deviceName, char const* groupName ) (1)

to the top

Problems with Data Types, Medium Severity (1)


indifilterinterface.h
namespace INDI
[+] class FilterInterface (1)

to the top

Problems with Symbols, Medium Severity (3)


baseclient.h, libindiclient.so
namespace INDI
[+] BaseClient::addDevice XMLEle* dep, char* errmsg ) (1)
[+] BaseClient::findDev XMLEle* root, int create, char* errmsg ) (1)
[+] BaseClient::findDev ( char const* devName, char* errmsg ) (1)

to the top

Problems with Data Types, Low Severity (6)


indiccd.h
namespace INDI
[+] class CCD (2)

indifilterwheel.h
namespace INDI
[+] class FilterWheel (1)

indifocuser.h
namespace INDI
[+] class Focuser (1)

inditelescope.h
namespace INDI
[+] class Telescope (2)

to the top

Problems with Symbols, Low Severity (3)


baseclient.h, libindiclient.so
namespace INDI
[+] BaseClient::setDriverConnection bool status, char const* deviceName ) (1)

indiccd.h, libindidriver.so
namespace INDI
[+] CCD::ISSnoopDevice XMLEle* root ) (1)

indifocuser.h, libindidriver.so
namespace INDI
[+] Focuser::ISSnoopDevice XMLEle* root ) (1)

to the top

Other Changes in Symbols (4)


baseclient.h, libindiclient.so
namespace INDI
[+] BaseClient::finishBlob ( ) (1)
[+] BaseClient::sendNewNumber INumberVectorProperty* pp ) (1)
[+] BaseClient::sendNewText ITextVectorProperty* pp ) (1)
[+] BaseClient::startBlob ( char const* devName, char const* propName, char const* timestamp ) (1)

to the top

Header Files (18)


base64.h
baseclient.h
basedriver.h
defaultdriver.h
eventloop.h
indiapi.h
indibase.h
indiccd.h
indicom.h
indidevapi.h
indidriver.h
indifilterinterface.h
indifilterwheel.h
indifocuser.h
indiguiderinterface.h
inditelescope.h
indiusbdevice.h
lilxml.h

to the top

Shared Libraries (4)


libindi.so.0.9.0
libindiclient.so
libindidriver.so
libindimain.so

to the top




Generated on Fri Apr 19 19:15:37 2013 for INDI by ABI Compliance Checker 1.99  
A tool for checking backward compatibility of a C/C++ library API