Import Geant4 10.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-10 11:51:14 +02:00
parent e2d2f9810a
commit 286caacf06
12421 changed files with 730077 additions and 502383 deletions
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id$
// $Id: G4OpenGLImmediateWtViewer.hh 75567 2013-11-04 11:35:11Z gcosmo $
//
//
// Class G4OpenGLImmediateWtViewer : a class derived from
@@ -36,47 +36,69 @@
#define G4OPENGLIMMEDIATEWTVIEWER_HH
#include "G4OpenGLImmediateViewer.hh"
#include "G4OpenGLImmediateQtViewer.hh"
#include "G4OpenGLWtViewer.hh"
#include <Wt/WPaintedWidget>
#include <Wt/WEvent>
//#include <qgl.h> // include <qglwidget.h>
#include "globals.hh"
class G4OpenGLImmediateSceneHandler;
class QMouseEvent;
class G4OpenGLImmediateWtViewer : public G4VViewer,
/* public G4OpenGLImmediateViewer ,*/ public Wt::WPaintedWidget {
class G4OpenGLImmediateWtViewer :
public G4OpenGLWtViewer, public G4OpenGLImmediateViewer, public Wt::WGLWidget {
public:
G4OpenGLImmediateWtViewer (G4OpenGLImmediateSceneHandler& scene, Wt::WContainerWidget *,
const G4String& name = "");
G4OpenGLImmediateWtViewer (G4OpenGLImmediateSceneHandler& scene, Wt::WContainerWidget*, const G4String& name = "");
~G4OpenGLImmediateWtViewer ();
void Initialise ();
void resizeGL(int, int);
void paintGL();
void initializeGL ();
void DrawView();
void ShowView();
void SetView();
//
void popMatrix();
void pushMatrix();
void multMatrixd(const GLdouble*);
void setMatrixUniforms();
void loadIdentity();
void wtDrawArrays(GLenum mode,int first, G4int nPoints, std::vector<double> a_vertices);
void ComputeView ();
void drawScene ();
void FinishView();
private:
G4OpenGLImmediateQtViewer * fQtViewer;
// void WtShowEvent(QShowEvent event );
void WtWheelEvent(Wt::WMouseEvent event);
void WtMousePressEvent(Wt::WMouseEvent event);
void WtMouseMoveEvent(Wt::WMouseEvent event);
void WtMouseDoubleClickEvent(Wt::WMouseEvent event);
// void WtMouseReleaseEvent(Wt::WMouseEvent event);
// void showEvent(QShowEvent event );
void mousePressEvent(Wt::WMouseEvent *event);
void mouseMoveEvent(Wt::WMouseEvent *event);
void mouseDoubleClickEvent(Wt::WMouseEvent *event);
void mouseReleaseEvent(Wt::WMouseEvent event);
// void WtContextMenuEvent(QContextMenuEvent e);
void WtKeyPressEvent (Wt::WKeyEvent event);
void keyPressEvent (Wt::WKeyEvent *event);
void paintEvent(Wt::WPaintDevice * event);
QMouseEvent * ConvertWtMouseEventToQt(Wt::WMouseEvent event);
QWheelEvent * ConvertWtWheelEventToQt(Wt::WMouseEvent event);
QKeyEvent * ConvertWtKeyEventToQt(Wt::WKeyEvent event);
void updateWWidget();
// A client-side JavaScript matrix variable
JavaScriptMatrix4x4 jsMatrix_;
// The so-called VBOs, Vertex Buffer Objects
// This one contains both vertex (xyz) and normal (xyz) data
Buffer objBuffer_;
// void ComputeView ();
// implements G4VViewer::SetView() and ClearView()
void SetView ();
void ClearView ();
// void SetView ();
// void ClearView ();
// To avoid copying large constant data around, the data points are stored
// in a global variable.
std::vector<double> data;
std::vector <Buffer> VBO_Buffer;
};
#endif