28 #ifndef _CPPUHELPER_INTERFACECONTAINER_HXX_
29 #define _CPPUHELPER_INTERFACECONTAINER_HXX_
37 template<
class key ,
class hashImpl ,
class equalImpl >
42 m_pMap =
new InterfaceMap;
46 template<
class key ,
class hashImpl ,
class equalImpl >
50 typename InterfaceMap::iterator iter = m_pMap->begin();
51 typename InterfaceMap::iterator end = m_pMap->end();
63 template<
class key ,
class hashImpl ,
class equalImpl >
68 typename InterfaceMap::size_type nSize = m_pMap->size();
72 key * pArray = aInterfaceTypes.
getArray();
74 typename InterfaceMap::iterator iter = m_pMap->begin();
75 typename InterfaceMap::iterator end = m_pMap->end();
83 pArray[i++] = (*iter).first;
90 return aInterfaceTypes;
92 return ::com::sun::star::uno::Sequence<key>();
96 template<
class key ,
class hashImpl ,
class equalImpl >
102 typename InterfaceMap::iterator iter = find( rKey );
103 if( iter != m_pMap->end() )
109 template<
class key ,
class hashImpl ,
class equalImpl >
112 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rListener )
116 typename InterfaceMap::iterator iter = find( rKey );
117 if( iter == m_pMap->end() )
120 m_pMap->push_back(std::pair<key, void*>(rKey, pLC));
128 template<
class key ,
class hashImpl ,
class equalImpl >
131 const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rListener )
137 typename InterfaceMap::iterator iter = find( rKey );
139 if( iter != m_pMap->end() )
147 template<
class key ,
class hashImpl ,
class equalImpl >
149 const ::com::sun::star::lang::EventObject & rEvt )
152 typename InterfaceMap::size_type nSize = 0;
156 nSize = m_pMap->size();
160 ppListenerContainers =
new ppp[nSize];
162 typename InterfaceMap::iterator iter = m_pMap->begin();
163 typename InterfaceMap::iterator end = m_pMap->end();
165 typename InterfaceMap::size_type i = 0;
175 for(
typename InterfaceMap::size_type i = 0; i < nSize; i++ )
177 if( ppListenerContainers[i] )
181 delete [] ppListenerContainers;
185 template<
class key ,
class hashImpl ,
class equalImpl >
189 typename InterfaceMap::iterator iter = m_pMap->begin();
190 typename InterfaceMap::iterator end = m_pMap->end();