/usr/include/osgEarthUtil/ExampleResources is in libosgearth-dev 2.7.0+dfsg-2+b3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | /* -*-c++-*- */
/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
* Copyright 2015 Pelican Mapping
* http://osgearth.org
*
* osgEarth is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>
*/
#ifndef OSGEARTH_UTIL_EXAMPLE_RESOURCES_H
#define OSGEARTH_UTIL_EXAMPLE_RESOURCES_H 1
#include <osgEarthUtil/Common>
#include <osgEarthUtil/Controls>
#include <osgEarthUtil/EarthManipulator>
#include <osgEarthUtil/Sky>
#include <osgEarthUtil/Ocean>
#include <osgEarth/Viewpoint>
//#include <osg/ArgumentParser>
namespace osgEarth {
class MapNode;
}
namespace osg {
class ArgumentParser;
}
namespace osgViewer {
class View;
};
/**
* This is a collection of resources used by the osgEarth example applications.
*/
namespace osgEarth { namespace Util
{
using namespace osgEarth;
using namespace osgEarth::Util::Controls;
/**
* Parses a set of built-in example arguments. Any Controls created by parsing
* command-line parameters will appear in the lower-left corner of the display.
*/
class OSGEARTHUTIL_EXPORT MapNodeHelper
{
public:
/**
* Loads a map file and processes all the built-in example command line
* arguemnts and XML externals.
*/
osg::Group* load(
osg::ArgumentParser& args,
osgViewer::View* view,
Container* userContainer =0L ) const;
/**
* Takes an existing map node and processes all the built-in example command
* line arguments and mapNode externals.
*/
void parse(
MapNode* mapNode,
osg::ArgumentParser& args,
osgViewer::View* view,
osg::Group* parentGroup,
Container* userContainer) const;
void parse(
MapNode* mapNode,
osg::ArgumentParser& args,
osgViewer::View* view,
osg::Group* parentGroup,
LabelControl* userLabel) const;
/**
* Configures a view with a stock set of event handlers that are useful
* for demos, and performs some other common view configuation for osgEarth.
*/
void configureView( osgViewer::View* view ) const;
/**
* Returns a usage string
*/
std::string usage() const;
};
/**
* Creates a UI Control with a list of clickable viewpoints.
*/
class OSGEARTHUTIL_EXPORT ViewpointControlFactory
{
public:
Control* create(
const std::vector<Viewpoint>& list,
osgViewer::View* view) const;
};
/**
* Creates UI controls that show the map coordinates under the mouse
*/
class OSGEARTHUTIL_EXPORT MouseCoordsControlFactory
{
public:
Control* create(
MapNode* mapNode,
osgViewer::View* view ) const;
};
/**
* Creates a UI Control reflecting all the named Annotations found in a
* scene graph.
*/
class OSGEARTHUTIL_EXPORT AnnotationGraphControlFactory
{
public:
Control* create(
osg::Node* node,
osgViewer::View* view) const;
};
/**
* Creates a set of controls for manipulating the Sky model.
*/
class OSGEARTHUTIL_EXPORT SkyControlFactory
{
public:
Control* create(
SkyNode* sky,
osgViewer::View* view ) const;
};
/**
* Creates a set of controls for manipulating the Ocean surface model.
*/
class OSGEARTHUTIL_EXPORT OceanControlFactory
{
public:
Control* create(
OceanNode* ocean ) const;
};
} } // namespace osgEarth::Util
#endif // OSGEARTH_UTIL_EXAMPLE_RESOURCES_H
|