LibreOffice Module cppuhelper (master)  1
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
cppu::OMultiTypeInterfaceContainerHelperInt32 Class Reference

Specialized class for key type sal_Int32, without explicit usage of STL symbols. More...

#include <propshlp.hxx>

Public Types

typedef sal_Int32 keyType
 

Public Member Functions

 OMultiTypeInterfaceContainerHelperInt32 (::osl::Mutex &rMutex)
 Create a container of interface containers. More...
 
 ~OMultiTypeInterfaceContainerHelperInt32 ()
 Delete all containers. More...
 
css::uno::Sequence< sal_Int32 > SAL_CALL getContainedTypes () const
 Return all id's under which at least one interface is added. More...
 
OInterfaceContainerHelper *SAL_CALL getContainer (const sal_Int32 &rKey) const
 Return the container created under this key. More...
 
sal_Int32 SAL_CALL addInterface (const sal_Int32 &rKey, const css::uno::Reference< css::uno::XInterface > &r)
 Insert an element in the container specified with the key. More...
 
sal_Int32 SAL_CALL removeInterface (const sal_Int32 &rKey, const css::uno::Reference< css::uno::XInterface > &rxIFace)
 Remove an element from the container specified with the key. More...
 
void SAL_CALL disposeAndClear (const css::lang::EventObject &rEvt)
 Call disposing on all objects in the container that support XEventListener. More...
 
void SAL_CALL clear ()
 Remove all elements of all containers. More...
 

Static Public Member Functions

static void *SAL_CALL operator new (size_t nSize)
 
static void SAL_CALL operator delete (void *pMem)
 
static void *SAL_CALL operator new (size_t, void *pMem)
 
static void SAL_CALL operator delete (void *, void *)
 

Private Member Functions

 OMultiTypeInterfaceContainerHelperInt32 (const OMultiTypeInterfaceContainerHelperInt32 &) SAL_DELETED_FUNCTION
 
OMultiTypeInterfaceContainerHelperInt32operator= (const OMultiTypeInterfaceContainerHelperInt32 &) SAL_DELETED_FUNCTION
 

Private Attributes

voidm_pMap
 
::osl::Mutex & rMutex
 

Detailed Description

Specialized class for key type sal_Int32, without explicit usage of STL symbols.

Definition at line 222 of file propshlp.hxx.

Member Typedef Documentation

Definition at line 292 of file propshlp.hxx.

Constructor & Destructor Documentation

cppu::OMultiTypeInterfaceContainerHelperInt32::OMultiTypeInterfaceContainerHelperInt32 ( ::osl::Mutex &  rMutex)

Create a container of interface containers.

Parameters
rMutexthe mutex to protect multi thread access. The lifetime must be longer than the lifetime of this object.
cppu::OMultiTypeInterfaceContainerHelperInt32::~OMultiTypeInterfaceContainerHelperInt32 ( )

Delete all containers.

Definition at line 455 of file interfacecontainer.cxx.

cppu::OMultiTypeInterfaceContainerHelperInt32::OMultiTypeInterfaceContainerHelperInt32 ( const OMultiTypeInterfaceContainerHelperInt32 )
private

Member Function Documentation

sal_Int32 cppu::OMultiTypeInterfaceContainerHelperInt32::addInterface ( const sal_Int32 &  rKey,
const css::uno::Reference< css::uno::XInterface > &  r 
)

Insert an element in the container specified with the key.

The position is not specified.

Parameters
rKeythe id of the container.
rthe added interface. It is allowed to insert null or the same pointer more than once.
Returns
the new count of elements in the container.

Definition at line 512 of file interfacecontainer.cxx.

References cppu::OInterfaceContainerHelper::addInterface(), and cppu::findLong().

Referenced by cppu::OPropertySetHelper::addPropertyChangeListener(), and cppu::OPropertySetHelper::addVetoableChangeListener().

void cppu::OMultiTypeInterfaceContainerHelperInt32::clear ( )

Remove all elements of all containers.

Does not delete the container.

Definition at line 580 of file interfacecontainer.cxx.

void cppu::OMultiTypeInterfaceContainerHelperInt32::disposeAndClear ( const css::lang::EventObject &  rEvt)

Call disposing on all objects in the container that support XEventListener.

Then clear the container.

Definition at line 547 of file interfacecontainer.cxx.

References cppu::OInterfaceContainerHelper::disposeAndClear(), and i.

Referenced by cppu::OPropertySetHelper::disposing().

Sequence< sal_Int32 > cppu::OMultiTypeInterfaceContainerHelperInt32::getContainedTypes ( ) const

Return all id's under which at least one interface is added.

Definition at line 470 of file interfacecontainer.cxx.

References i.

OInterfaceContainerHelper * cppu::OMultiTypeInterfaceContainerHelperInt32::getContainer ( const sal_Int32 &  rKey) const

Return the container created under this key.

Returns
the container created under this key. If the container was not created, null was returned.

Definition at line 499 of file interfacecontainer.cxx.

References cppu::findLong().

static void SAL_CALL cppu::OMultiTypeInterfaceContainerHelperInt32::operator delete ( void pMem)
inlinestatic

Definition at line 228 of file propshlp.hxx.

static void SAL_CALL cppu::OMultiTypeInterfaceContainerHelperInt32::operator delete ( void ,
void  
)
inlinestatic

Definition at line 232 of file propshlp.hxx.

static void* SAL_CALL cppu::OMultiTypeInterfaceContainerHelperInt32::operator new ( size_t  nSize)
inlinestatic

Definition at line 226 of file propshlp.hxx.

static void* SAL_CALL cppu::OMultiTypeInterfaceContainerHelperInt32::operator new ( size_t  ,
void pMem 
)
inlinestatic

Definition at line 230 of file propshlp.hxx.

OMultiTypeInterfaceContainerHelperInt32& cppu::OMultiTypeInterfaceContainerHelperInt32::operator= ( const OMultiTypeInterfaceContainerHelperInt32 )
private
sal_Int32 cppu::OMultiTypeInterfaceContainerHelperInt32::removeInterface ( const sal_Int32 &  rKey,
const css::uno::Reference< css::uno::XInterface > &  rxIFace 
)

Remove an element from the container specified with the key.

It uses the equal definition of uno objects to remove the interfaces.

Parameters
rKeythe id of the container.
rxIFacethe removed interface.
Returns
the new count of elements in the container.

Definition at line 529 of file interfacecontainer.cxx.

References cppu::findLong().

Referenced by cppu::OPropertySetHelper::removePropertyChangeListener(), and cppu::OPropertySetHelper::removeVetoableChangeListener().

Member Data Documentation

void* cppu::OMultiTypeInterfaceContainerHelperInt32::m_pMap
private

Definition at line 294 of file propshlp.hxx.

::osl::Mutex& cppu::OMultiTypeInterfaceContainerHelperInt32::rMutex
private

Definition at line 295 of file propshlp.hxx.


The documentation for this class was generated from the following files: