blob: 8c454a0496611b969007488d8807f6e2616fe263 [file] [log] [blame]
<html>
<head>
<title>class OInterfaceContainerHelper</title>
<style> h1 { font-size:20pt; margin-top:3pt; margin-bottom:7pt; }
h2 { font-family:"Arial"; font-size:16pt; margin-top:3pt; margin-bottom:5pt; }
h3 { font-size:13pt; margin-top:2pt; margin-bottom:3pt; }
h4 { font-size:10pt; font-weight:bold; margin-top:2pt; margin-bottom:1pt; }
dl { margin-top:1pt; margin-bottom:1pt; }
dl.member { margin-top:1pt; margin-bottom:1pt; background-color:#eeeeff; }
dt { font-size:10pt; font-weight:bold; margin-top:2pt; margin-bottom:1pt; }
dt.member { font-size:13pt; font-weight:bold; margin-top:2pt; margin-bottom:1pt; }
dt.simple { font-size:10pt; font-weight:normal; margin-top:2pt; margin-bottom:1pt; }
dd { font-size:10pt; margin-top:1pt; margin-bottom:1pt; }
dd.member { font-size:10pt; margin-top:1pt; margin-bottom:1pt; background-color:#ffffff; }
p { font-size:10pt; margin-top:3pt; margin-bottom:1pt; }
pre { font-family: Times, serif; font-size:10pt; margin-top:1pt; margin-bottom:1pt; }
tr { font-size:10pt; }
td { font-size:10pt; }
</style>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
</head>
<body bgcolor="#ffffff">
<a name="_top_"> </a>
<table border="0" cellpadding="1" cellspacing="0">
<tr align="center" valign="top">
<td bgcolor="#eeeeff">&nbsp;<a href="../../index.html" alt><font family="Arial" color="#000000" size="+1"><b>Overview</b></font></a>&nbsp;</td>
<td bgcolor="#eeeeff">&nbsp;<a href="index.html" alt><font family="Arial" color="#000000" size="+1"><b>Namespace</b></font></a>&nbsp;</td>
<td bgcolor="#2222ad">&nbsp;<font family="Arial" color="#ffffff" size="+1"><b>Class</b></font>&nbsp;</td>
<td bgcolor="#eeeeff">&nbsp;<a href="../../index-files/index-1.html" alt><font family="Arial" color="#000000" size="+1"><b>Index</b></font></a>&nbsp;</td>
<td bgcolor="#eeeeff">&nbsp;<a href="../../help.html" alt><font family="Arial" color="#000000" size="+1"><b>Help</b></font></a>&nbsp;</td>
</tr>
</table>
<table cellpadding="0" cellspacing="3">
<tr>
<td width="20%"><font size="-2">PUBLIC MEMBERS:</font></td>
<td>
&nbsp;<font size="-2">CLASSES</font>
|&nbsp;<font size="-2">STRUCTS</font>
|&nbsp;<font size="-2">UNIONS</font>
|&nbsp;<font size="-2">ENUMS</font>
|&nbsp;<font size="-2">TYPEDEFS</font>
|&nbsp;<a href="#publ_ops"><font size="-2"><b>METHODS</b></font></a>
|&nbsp;<a href="#publ_static_ops"><font size="-2"><b>STATIC METHODS</b></font></a>
|&nbsp;<font size="-2">DATA</font>
|&nbsp;<font size="-2">STATIC DATA</font></td>
</tr>
<tr>
<td width="20%"><font size="-2">PRIVATE MEMBERS:</font></td>
<td>
&nbsp;<font size="-2">CLASSES</font>
|&nbsp;<font size="-2">STRUCTS</font>
|&nbsp;<font size="-2">UNIONS</font>
|&nbsp;<font size="-2">ENUMS</font>
|&nbsp;<font size="-2">TYPEDEFS</font>
|&nbsp;<a href="#priv_ops"><font size="-2"><b>METHODS</b></font></a>
|&nbsp;<font size="-2">STATIC METHODS</font>
|&nbsp;<a href="#priv_vars"><font size="-2"><b>DATA</b></font></a>
|&nbsp;<font size="-2">STATIC DATA</font></td>
</tr>
</table>
<hr>
<a href="../../names/index.html" alt="Global Namespace in C++"><font size="+1"><b>::</b></font></a> <a href="index.html" alt="namespace"><font size="+1"><b>cppu</b></font></a><font size="+1"> :: </font><div align="center" style="background-color:#ccccff; line-height:26pt;"><h2>class OInterfaceContainerHelper</h2>
</div><hr>
<dl>
<dt>Base Classes</dt>
<dd>None.</dd>
</dl>
<dl>
<dt>Known Derived Classes</dt>
<dd>None.</dd>
</dl>
<br>
<table border cellspacing="0">
<tr>
<td bgcolor="#eeeeff" width="25%" style="font-family:Arial; font-size:8pt; font-weight:bold;">virtual</td>
<td bgcolor="#eeeeff" width="25%" style="font-family:Arial; font-size:8pt; font-weight:bold;">abstract</td>
<td bgcolor="#eeeeff" width="25%" style="font-family:Arial; font-size:8pt; font-weight:bold;">interface</td>
<td bgcolor="#eeeeff" width="25%" style="font-family:Arial; font-size:8pt; font-weight:bold;">template</td>
</tr>
<tr>
<td style="font-family:Arial; font-size:8pt;">NO</td>
<td style="font-family:Arial; font-size:8pt;">NO</td>
<td style="font-family:Arial; font-size:8pt;">NO</td>
<td style="font-family:Arial; font-size:8pt;">NO</td>
</tr>
</table>
<dl>
<dt>Summary</dt>
<dd>A container of interfaces. To access the elements use an iterator.
This implementation is thread save.
</dd>
<dt>See Also</dt>
<dd><a href="c-OInterfaceIteratorHelper.html">OInterfaceIteratorHelper</a> <br>
</dd>
</dl>
<dl>
<dt>File</dt>
<dd>interfacecontainer.h</dd>
</dl>
<hr>
<dl>
<dt bgcolor="#CCCCFF"><a name="publ_"><h3>Public Members</h3>
</a>
</dt>
<dd><a name="publ_ops"> </a>
<table cellpadding="5" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF">
<td colspan="2"><h4>Methods</h4>
</td>
</tr>
<tr>
<td> <br>
<a href="OInterfaceContainerHelper/o.html#OInterfaceContainerHelper-1072">OInterfaceContainerHelper</a>( ::osl::Mutex &amp; rMutex ) throw( );</td>
<td width="50%"> Create an interface container.
</td>
</tr>
<tr>
<td> <br>
<a href="OInterfaceContainerHelper/o.html#~OInterfaceContainerHelper-1">~OInterfaceContainerHelper</a>( ) throw( );</td>
<td width="50%"> Release all interfaces. All iterators must be destroyed before
the container is destructed.
</td>
</tr>
<tr>
<td>sal_Int32 <br>
<a href="OInterfaceContainerHelper/o.html#getLength-5">getLength</a>( ) const throw( );</td>
<td width="50%"> Return the number of Elements in the container. Only useful if you have acquired
the mutex.
</td>
</tr>
<tr>
<td>::com::sun::star::uno::Sequence&lt; ::com::sun::star::uno::Reference&lt; ::com::sun::star::uno::XInterface &gt; &gt; <br>
<a href="OInterfaceContainerHelper/o.html#getElements-5">getElements</a>( ) const throw( );</td>
<td width="50%"> Return all interfaces added to this container.
</td>
</tr>
<tr>
<td>sal_Int32 <br>
<a href="OInterfaceContainerHelper/o.html#addInterface-1073">addInterface</a>( const ::com::sun::star::uno::Reference&lt; ::com::sun::star::uno::XInterface &gt; &amp; rxIFace ) throw( );</td>
<td width="50%"> Insert an element in the container. The position is not specified.
</td>
</tr>
<tr>
<td>sal_Int32 <br>
<a href="OInterfaceContainerHelper/o.html#removeInterface-1073">removeInterface</a>( const ::com::sun::star::uno::Reference&lt; ::com::sun::star::uno::XInterface &gt; &amp; rxIFace ) throw( );</td>
<td width="50%"> Remove an element from the container. It uses the equal definition of
uno objects to remove the interfaces.
</td>
</tr>
<tr>
<td>void <br>
<a href="OInterfaceContainerHelper/o.html#disposeAndClear-1074">disposeAndClear</a>( const ::com::sun::star::lang::EventObject &amp; rEvt ) throw( );</td>
<td width="50%"> Call disposing on all object in the container that
support XEventListener. Than clear the container.
</td>
</tr>
<tr>
<td>void <br>
<a href="OInterfaceContainerHelper/o.html#clear-1">clear</a>( ) throw( );</td>
<td width="50%"> Clears the container without calling disposing().
</td>
</tr>
</table>
<hr>
<a name="publ_static_ops"> </a>
<table cellpadding="5" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF">
<td colspan="2"><h4>Static Methods</h4>
</td>
</tr>
<tr>
<td>static void * <br>
<a href="OInterfaceContainerHelper/o.html#operator new-94">operator new</a>( size_t nSize ) throw( );</td>
<td width="50%"> </td>
</tr>
<tr>
<td>static void <br>
<a href="OInterfaceContainerHelper/o.html#operator delete-1069">operator delete</a>( void * pMem ) throw( );</td>
<td width="50%"> </td>
</tr>
<tr>
<td>static void * <br>
<a href="OInterfaceContainerHelper/o.html#operator new-1070">operator new</a>( size_t , void * pMem ) throw( );</td>
<td width="50%"> </td>
</tr>
<tr>
<td>static void <br>
<a href="OInterfaceContainerHelper/o.html#operator delete-1071">operator delete</a>( void * , void * ) throw( );</td>
<td width="50%"> </td>
</tr>
</table>
<hr>
</dd>
</dl>
<dl>
<dt bgcolor="#CCCCFF"><a name="priv_"><h3>Private Members</h3>
</a>
</dt>
<dd><a name="priv_ops"> </a>
<table cellpadding="5" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF">
<td colspan="2"><h4>Methods</h4>
</td>
</tr>
<tr>
<td> <br>
<a href="OInterfaceContainerHelper/o.html#OInterfaceContainerHelper-1075">OInterfaceContainerHelper</a>( const OInterfaceContainerHelper &amp; ) throw( );</td>
<td width="50%"> </td>
</tr>
<tr>
<td>OInterfaceContainerHelper &amp; <br>
<a href="OInterfaceContainerHelper/o.html#operator=-1075">operator=</a>( const OInterfaceContainerHelper &amp; ) throw( );</td>
<td width="50%"> </td>
</tr>
<tr>
<td>void <br>
<a href="OInterfaceContainerHelper/o.html#copyAndResetInUse-1">copyAndResetInUse</a>( ) throw( );</td>
<td width="50%"> </td>
</tr>
</table>
<hr>
<a name="priv_vars"> </a>
<table cellpadding="5" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF">
<td colspan="2"><h4>Data</h4>
</td>
</tr>
<tr bgcolor="white">
<td>void * <a href="OInterfaceContainerHelper/d.html#pData"><strong>pData;</strong></a></td>
<td>bIsList == TRUE -&gt; pData of type Sequence&lt; XInterfaceSequence &gt;,
otherwise pData == of type (XEventListener *)
</td>
</tr>
<tr bgcolor="white">
<td>::osl::<a href="../osl/c-Mutex.html">Mutex</a> &amp; <a href="OInterfaceContainerHelper/d.html#rMutex"><strong>rMutex;</strong></a></td>
<td/></tr>
<tr bgcolor="white">
<td><a href="../t-sal_Bool.html">sal_Bool</a> <a href="OInterfaceContainerHelper/d.html#bInUse"><strong>bInUse;</strong></a></td>
<td>TRUE -&gt; used by an iterator. </td>
</tr>
<tr bgcolor="white">
<td><a href="../t-sal_Bool.html">sal_Bool</a> <a href="OInterfaceContainerHelper/d.html#bIsList"><strong>bIsList;</strong></a></td>
<td>TRUE -&gt; pData is of type Sequence&lt; XInterfaceSequence &gt;. </td>
</tr>
</table>
<hr>
</dd>
</dl>
<a href="#_top_" class="objchapter">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright 2002 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, CA 94303 USA.</p>
</body>