<!-- Copyright 2008 Lubomir Bourdev and Hailin Jin Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) --> <!-- Copyright 2005-2007 Adobe Systems Incorporated Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt or a copy at http://stlab.adobe.com/licenses.html) Some files are held under additional license. Please see "http://stlab.adobe.com/licenses.html" for more information. --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <TITLE>Generic Image Library: binary_operation_obj Struct Template Reference</TITLE> <META HTTP-EQUIV="content-type" CONTENT="text/html;charset=ISO-8859-1"/> <LINK TYPE="text/css" REL="stylesheet" HREF="adobe_source.css"/> </head> <body> <table border="0" cellspacing="0" cellpadding="0" style='width: 100%; margin: 0; padding: 0'><tr> <td width="100%" valign="top" style='padding-left: 10px; padding-right: 10px; padding-bottom: 10px'> <div class="qindex"><a class="qindex" href="index.html">Modules</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="../index.html">GIL Home Page</a> </div> <!-- End Header --> <!-- Generated by Doxygen 1.5.6 --> <div class="navpath"><a class="el" href="namespaceboost.html">boost</a>::<b>gil</b>::<a class="el" href="g_i_l_0387.html">binary_operation_obj</a> </div> <div class="contents"> <h1>binary_operation_obj Struct Template Reference<br> <small> [<a class="el" href="g_i_l_0143.html">STL-like Algorithms</a>]</small> </h1><!-- doxytag: class="boost::gil::binary_operation_obj" --><code>#include <<a class="el" href="g_i_l_0001.html">algorithm.hpp</a>></code> <p> Inherited by copy_and_convert_pixels_fn, copy_pixels_fn, and equal_pixels_fn. <p> <p> <a href="g_i_l_0386.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> <h3>template<typename Derived, typename Result = void><br> struct boost::gil::binary_operation_obj< Derived, Result ></h3> A generic binary operation on views<p> Use this class as a convenience superclass when defining an operation for any <a class="el" href="g_i_l_0038.html" title="container interface over image view. Models ImageConcept, PixelBasedConcept">image</a> views. Many operations have different behavior when the two views are compatible. This class checks for compatibility and invokes apply_compatible(V1,V2) or apply_incompatible(V1,V2) of the subclass. You must provide apply_compatible(V1,V2) method in your subclass, but apply_incompatible(V1,V2) is not required and the default throws std::bad_cast. <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b8b34e9545bb5367e1eb8e9ba9758375"></a><!-- doxytag: member="boost::gil::binary_operation_obj::result_type" ref="b8b34e9545bb5367e1eb8e9ba9758375" args="" --> typedef Result </td><td class="memItemRight" valign="bottom"><b>result_type</b></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="eb2c54f346752ba0fb2e42f9f79739f8"></a><!-- doxytag: member="boost::gil::binary_operation_obj::operator()" ref="eb2c54f346752ba0fb2e42f9f79739f8" args="(const std::pair< const V1 *, const V2 * > &p) const " --> template<typename V1, typename V2> </td></tr> <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">GIL_FORCEINLINE result_type </td><td class="memTemplItemRight" valign="bottom"><b>operator()</b> (const std::pair< const V1 *, const V2 * > &p) const </td></tr> <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8da86345d168eeb03a90f4b798d236a0"></a><!-- doxytag: member="boost::gil::binary_operation_obj::operator()" ref="8da86345d168eeb03a90f4b798d236a0" args="(const V1 &v1, const V2 &v2) const " --> template<typename V1, typename V2> </td></tr> <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">GIL_FORCEINLINE result_type </td><td class="memTemplItemRight" valign="bottom"><b>operator()</b> (const V1 &v1, const V2 &v2) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1bc4473befbab9d1e1d4ca395ff88461"></a><!-- doxytag: member="boost::gil::binary_operation_obj::operator()" ref="1bc4473befbab9d1e1d4ca395ff88461" args="(const error_t &) const " --> result_type </td><td class="memItemRight" valign="bottom"><b>operator()</b> (const error_t &) const </td></tr> </table> <hr>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="g_i_l_0001.html">algorithm.hpp</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Sat May 2 13:50:17 2009 for Generic Image Library by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> </body> </html>