19 #ifndef _CPPUHELPER_INTERFACECONTAINER_HXX_
20 #define _CPPUHELPER_INTERFACECONTAINER_HXX_
28 template<
class key ,
class hashImpl ,
class equalImpl >
33 m_pMap =
new InterfaceMap;
37 template<
class key ,
class hashImpl ,
class equalImpl >
41 typename InterfaceMap::iterator iter = m_pMap->begin();
42 typename InterfaceMap::iterator end = m_pMap->end();
54 template<
class key ,
class hashImpl ,
class equalImpl >
59 typename InterfaceMap::size_type nSize = m_pMap->size();
63 key * pArray = aInterfaceTypes.
getArray();
65 typename InterfaceMap::iterator iter = m_pMap->begin();
66 typename InterfaceMap::iterator end = m_pMap->end();
74 pArray[i++] = (*iter).first;
81 return aInterfaceTypes;
83 return ::com::sun::star::uno::Sequence<key>();
87 template<
class key ,
class hashImpl ,
class equalImpl >
93 typename InterfaceMap::iterator iter = find( rKey );
94 if( iter != m_pMap->end() )
100 template<
class key ,
class hashImpl ,
class equalImpl >
103 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rListener )
107 typename InterfaceMap::iterator iter = find( rKey );
108 if( iter == m_pMap->end() )
111 m_pMap->push_back(std::pair<key, void*>(rKey, pLC));
119 template<
class key ,
class hashImpl ,
class equalImpl >
122 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rListener )
128 typename InterfaceMap::iterator iter = find( rKey );
130 if( iter != m_pMap->end() )
138 template<
class key ,
class hashImpl ,
class equalImpl >
140 const ::com::sun::star::lang::EventObject & rEvt )
143 typename InterfaceMap::size_type nSize = 0;
147 nSize = m_pMap->size();
151 ppListenerContainers =
new ppp[nSize];
153 typename InterfaceMap::iterator iter = m_pMap->begin();
154 typename InterfaceMap::iterator end = m_pMap->end();
156 typename InterfaceMap::size_type i = 0;
166 for(
typename InterfaceMap::size_type i = 0; i < nSize; i++ )
168 if( ppListenerContainers[i] )
172 delete [] ppListenerContainers;
176 template<
class key ,
class hashImpl ,
class equalImpl >
180 typename InterfaceMap::iterator iter = m_pMap->begin();
181 typename InterfaceMap::iterator end = m_pMap->end();