mirror of
https://github.com/schrodinger/pymol-open-source.git
synced 2026-06-04 20:04:21 +08:00
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
|
|
/*
|
|
A* -------------------------------------------------------------------
|
|
B* This file contains source code for the PyMOL computer program
|
|
C* Copyright (c) Schrodinger, LLC.
|
|
D* -------------------------------------------------------------------
|
|
E* It is unlawful to modify or remove this copyright notice.
|
|
F* -------------------------------------------------------------------
|
|
G* Please see the accompanying LICENSE file for further information.
|
|
H* -------------------------------------------------------------------
|
|
I* Additional authors of this source file include:
|
|
-*
|
|
-*
|
|
-*
|
|
Z* -------------------------------------------------------------------
|
|
*/
|
|
|
|
#ifndef _H_SceneRender
|
|
#define _H_SceneRender
|
|
|
|
#include "Picking.h"
|
|
#include "RenderPass.h"
|
|
|
|
#include <vector>
|
|
|
|
enum class SceneRenderWhich {
|
|
AllObjects,
|
|
OnlyGadgets,
|
|
OnlyNonGadgets,
|
|
GadgetsLast
|
|
};
|
|
|
|
struct SceneRenderInfo
|
|
{
|
|
Picking* pick = nullptr;
|
|
Offset2D mousePos{};
|
|
Multipick* sceneMultipick = nullptr;
|
|
Extent2D oversizeExtent{};
|
|
ClickSide clickSide = ClickSide::None;
|
|
bool forceCopy = false;
|
|
};
|
|
|
|
void SceneRender(PyMOLGlobals* G, const SceneRenderInfo& renderInfo);
|
|
void SceneRenderAll(PyMOLGlobals * G, SceneUnitContext * context,
|
|
float *normal, PickColorManager*,
|
|
RenderPass pass, int fat, float width_scale,
|
|
GridInfo * grid, int dynamic_pass, SceneRenderWhich which_objects);
|
|
|
|
void SceneInitializeViewport(PyMOLGlobals* G, bool offscreen);
|
|
|
|
void GridSetViewport(PyMOLGlobals* G, GridInfo * I, int slot);
|
|
|
|
#endif
|
|
|