PanoToolsTransformGPU.cpp File Reference

GPU shader program conversion for PTools::Transform. More...

#include <hugin_config.h>
#include <stdlib.h>
#include "PanoToolsInterface.h"
#include <iostream>
#include <iomanip>

Include dependency graph for PanoToolsTransformGPU.cpp:

Go to the source code of this file.

Namespaces

namespace  HuginBase
namespace  HuginBase::PTools

Defines

#define distanceparam   (*((double*)params))
#define shift   (*((double*)params))
#define var0   ((double*)params)[0]
#define var1   ((double*)params)[1]
#define var2   ((double*)params)[2]
#define var3   ((double*)params)[3]
#define var4   ((double*)params)[4]
#define var5   ((double*)params)[5]
#define mp   ((struct MakeParams*)params)
#define DISCARD   "{ discardA = 0.0; discardB = 1.0; }"

Functions

static void rotate_erect_glsl (ostringstream &oss, const void *params)
static void resize_glsl (ostringstream &oss, const void *params)
static void vert_glsl (ostringstream &oss, const void *params)
static void horiz_glsl (ostringstream &oss, const void *params)
static void shear_glsl (ostringstream &oss, const void *params)
static void erect_pano_glsl (ostringstream &oss, const void *params)
static void erect_rect_glsl (ostringstream &oss, const void *params)
static void erect_sphere_tp_glsl (ostringstream &oss, const void *params)
static void sphere_tp_erect_glsl (ostringstream &oss, const void *params)
static void vertical_glsl (ostringstream &oss, const void *params)
static void deregister_glsl (ostringstream &oss, const void *params)
static void radial_glsl (ostringstream &oss, const void *params)
static void pano_sphere_tp_glsl (ostringstream &oss, const void *params)
static void rect_sphere_tp_glsl (ostringstream &oss, const void *params)
static void persp_sphere_glsl (ostringstream &oss, const void *params)
static void erect_mercator_glsl (ostringstream &oss, const void *params)
static void erect_millercylindrical_glsl (ostringstream &oss, const void *params)
static void erect_lambert_glsl (ostringstream &oss, const void *params)
static void erect_transmercator_glsl (ostringstream &oss, const void *params)
static void erect_sinusoidal_glsl (ostringstream &oss, const void *params)
static void erect_lambertazimuthal_glsl (ostringstream &oss, const void *params)
static void erect_hammer_glsl (ostringstream &oss, const void *params)
static void erect_arch_glsl (ostringstream &oss, const void *params)
static void erect_stereographic_glsl (ostringstream &oss, const void *params)
static void stereographic_erect_glsl (ostringstream &oss, const void *params)
static void erect_albersequalareaconic_glsl (ostringstream &oss, const void *params)
static void lambertazimuthal_erect_glsl (ostringstream &oss, const void *params)
static void sphere_tp_equisolid_glsl (ostringstream &oss, const void *params)
static void sphere_tp_orthographic_glsl (ostringstream &oss, const void *params)
static void orthographic_sphere_tp_glsl (ostringstream &oss, const void *params)
static void sphere_tp_thoby_glsl (ostringstream &oss, const void *params)
static void thoby_sphere_tp_glsl (ostringstream &oss, const void *params)
static void plane_transfer_to_camera_glsl (ostringstream &oss, const void *params)


Detailed Description

GPU shader program conversion for PTools::Transform.

Author:
Andrew Mihal
$Id$

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this software; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Definition in file PanoToolsTransformGPU.cpp.


Define Documentation

#define DISCARD   "{ discardA = 0.0; discardB = 1.0; }"

Definition at line 51 of file PanoToolsTransformGPU.cpp.

Referenced by erect_albersequalareaconic_glsl(), erect_hammer_glsl(), erect_lambertazimuthal_glsl(), erect_sinusoidal_glsl(), erect_stereographic_glsl(), erect_transmercator_glsl(), lambertazimuthal_erect_glsl(), orthographic_sphere_tp_glsl(), plane_transfer_to_camera_glsl(), sphere_tp_orthographic_glsl(), and sphere_tp_thoby_glsl().

#define distanceparam   (*((double*)params))

Definition at line 39 of file PanoToolsTransformGPU.cpp.

Referenced by erect_arch_glsl(), erect_hammer_glsl(), erect_lambert_glsl(), erect_lambertazimuthal_glsl(), erect_mercator_glsl(), erect_millercylindrical_glsl(), erect_pano_glsl(), erect_rect_glsl(), erect_sinusoidal_glsl(), erect_sphere_tp_glsl(), erect_stereographic_glsl(), erect_transmercator_glsl(), lambertazimuthal_erect_glsl(), orthographic_sphere_tp_glsl(), pano_sphere_tp_glsl(), rect_sphere_tp_glsl(), sphere_tp_equisolid_glsl(), sphere_tp_erect_glsl(), sphere_tp_orthographic_glsl(), sphere_tp_thoby_glsl(), stereographic_erect_glsl(), and thoby_sphere_tp_glsl().

#define mp   ((struct MakeParams*)params)

Definition at line 47 of file PanoToolsTransformGPU.cpp.

Referenced by erect_albersequalareaconic_glsl(), and plane_transfer_to_camera_glsl().

#define shift   (*((double*)params))

Definition at line 40 of file PanoToolsTransformGPU.cpp.

Referenced by horiz_glsl(), CPImageCtrl::OnKey(), print_result(), DisplayedControlPoint::ShiftControlPoint(), and vert_glsl().

#define var0   ((double*)params)[0]

Definition at line 41 of file PanoToolsTransformGPU.cpp.

Referenced by radial_glsl(), resize_glsl(), rotate_erect_glsl(), shear_glsl(), and vertical_glsl().

#define var1   ((double*)params)[1]

Definition at line 42 of file PanoToolsTransformGPU.cpp.

Referenced by deregister_glsl(), radial_glsl(), resize_glsl(), rotate_erect_glsl(), shear_glsl(), makefile::tester::TestConditional::TestConditional(), and vertical_glsl().

#define var2   ((double*)params)[2]

Definition at line 43 of file PanoToolsTransformGPU.cpp.

Referenced by deregister_glsl(), radial_glsl(), makefile::tester::TestConditional::TestConditional(), and vertical_glsl().

#define var3   ((double*)params)[3]

Definition at line 44 of file PanoToolsTransformGPU.cpp.

Referenced by deregister_glsl(), radial_glsl(), makefile::tester::TestConditional::TestConditional(), and vertical_glsl().

#define var4   ((double*)params)[4]

Definition at line 45 of file PanoToolsTransformGPU.cpp.

Referenced by deregister_glsl(), radial_glsl(), and vertical_glsl().

#define var5   ((double*)params)[5]

Definition at line 46 of file PanoToolsTransformGPU.cpp.

Referenced by radial_glsl().


Function Documentation

static void deregister_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 155 of file PanoToolsTransformGPU.cpp.

References var1, var2, var3, and var4.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_albersequalareaconic_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 338 of file PanoToolsTransformGPU.cpp.

References DISCARD, M_PI, and mp.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_arch_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 297 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_hammer_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 282 of file PanoToolsTransformGPU.cpp.

References DISCARD, distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_lambert_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 240 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_lambertazimuthal_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 265 of file PanoToolsTransformGPU.cpp.

References DISCARD, distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_mercator_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 228 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_millercylindrical_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 234 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_pano_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 95 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_rect_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 101 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_sinusoidal_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 258 of file PanoToolsTransformGPU.cpp.

References DISCARD, distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_sphere_tp_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 108 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_stereographic_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 309 of file PanoToolsTransformGPU.cpp.

References DISCARD, and distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void erect_transmercator_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 246 of file PanoToolsTransformGPU.cpp.

References DISCARD, distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void horiz_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 83 of file PanoToolsTransformGPU.cpp.

References shift.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void lambertazimuthal_erect_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 370 of file PanoToolsTransformGPU.cpp.

References DISCARD, and distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void orthographic_sphere_tp_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 401 of file PanoToolsTransformGPU.cpp.

References DISCARD, and distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void pano_sphere_tp_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 178 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void persp_sphere_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 206 of file PanoToolsTransformGPU.cpp.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void plane_transfer_to_camera_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 434 of file PanoToolsTransformGPU.cpp.

References DISCARD, and mp.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void radial_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 165 of file PanoToolsTransformGPU.cpp.

References var0, var1, var2, var3, var4, and var5.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void rect_sphere_tp_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 192 of file PanoToolsTransformGPU.cpp.

References distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void resize_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 71 of file PanoToolsTransformGPU.cpp.

References var0, and var1.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void rotate_erect_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 53 of file PanoToolsTransformGPU.cpp.

References var0, and var1.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void shear_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 89 of file PanoToolsTransformGPU.cpp.

References var0, and var1.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void sphere_tp_equisolid_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 381 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void sphere_tp_erect_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 123 of file PanoToolsTransformGPU.cpp.

References distanceparam, and M_PI.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void sphere_tp_orthographic_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 390 of file PanoToolsTransformGPU.cpp.

References DISCARD, and distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void sphere_tp_thoby_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 413 of file PanoToolsTransformGPU.cpp.

References DISCARD, and distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void stereographic_erect_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 327 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void thoby_sphere_tp_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 424 of file PanoToolsTransformGPU.cpp.

References distanceparam.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void vert_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 77 of file PanoToolsTransformGPU.cpp.

References shift.

Referenced by HuginBase::PTools::Transform::emitGLSL().

static void vertical_glsl ( ostringstream &  oss,
const void *  params 
) [static]

Definition at line 145 of file PanoToolsTransformGPU.cpp.

References var0, var1, var2, var3, and var4.

Referenced by HuginBase::PTools::Transform::emitGLSL().


Generated on 27 Nov 2014 for Hugintrunk by  doxygen 1.4.7