(incubating) | The Free and Open Productivity Suite
Announcing Apache OpenOffice 3.4
 Overview   Namespace   Class   Index   Help 
PUBLIC MEMBERS:  CLASSESSTRUCTSUNIONSENUMSTYPEDEFSMETHODSSTATIC METHODSDATASTATIC DATA
PRIVATE MEMBERS:  CLASSESSTRUCTSUNIONSENUMSTYPEDEFSMETHODSSTATIC METHODSDATASTATIC DATA

:: cppu ::

template< typename key, typename hashImpl, typename equalImpl >

class OMultiTypeInterfaceContainerHelperVar


Base Classes
None.
Known Derived Classes
None.

virtual abstract interface template
NO NO NO YES
Summary
A helper class to store interface references of different types.
See Also
OInterfaceIteratorHelper
OInterfaceContainerHelper
File
interfacecontainer.h

Public Members

Typedefs

keyType

Methods


OMultiTypeInterfaceContainerHelperVar( ::osl::Mutex & ) throw( );
Create a container of interface containers.

~OMultiTypeInterfaceContainerHelperVar( ) throw( );
Deletes all containers.
::com::sun::star::uno::Sequence< key >
getContainedTypes( ) const throw( );
Return all id's under which at least one interface is added.
OInterfaceContainerHelper *
getContainer( const key & ) const throw( );
Return the container created under this key. The InterfaceContainerHelper exists until the whole MultiTypeContainer is destroyed.
sal_Int32
addInterface( const key & rKey, const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & r ) throw( );
Inserts an element in the container specified with the key. The position is not specified.
sal_Int32
removeInterface( const key & rKey, const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rxIFace ) throw( );
Removes an element from the container specified with the key. It uses the equal definition of uno objects to remove the interfaces.
void
disposeAndClear( const ::com::sun::star::lang::EventObject & rEvt ) throw( );
Call disposing on all references in the container, that support XEventListener. Then clears the container.
void
clear( ) throw( );
Remove all elements of all containers. Does not delete the container.

Static Methods

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

Private Members

Methods


OMultiTypeInterfaceContainerHelperVar( const OMultiTypeInterfaceContainerHelperVar & ) throw( );
OMultiTypeInterfaceContainerHelperVar &
operator=( const OMultiTypeInterfaceContainerHelperVar & ) throw( );

Data

::std::hash_map< key, void *, hashImpl, equalImpl > * m_pMap;
::osl::Mutex & rMutex;

Top of Page

Apache Feather

Copyright & License | Privacy | Contact Us

Apache and the Apache feather logos are trademarks of The Apache Software Foundation. OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.

Apache OpenOffice is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.