gepetto-viewer 6.0.0
An user-friendly Graphical Interface
Loading...
Searching...
No Matches
leaf-node-light.h
Go to the documentation of this file.
1//
2// leaf-node-light.h
3// gepetto-viewer
4//
5// Created by Joseph Mirabel in July 2015.
6// Copyright (c) 2015 LAAS-CNRS. All rights reserved.
7//
8
9#ifndef GEPETTO_VIEWER_LEAFNODELIGHT_HH
10#define GEPETTO_VIEWER_LEAFNODELIGHT_HH
11
14
15namespace gepetto {
16namespace viewer {
17DEF_CLASS_SMART_PTR(LeafNodeLight)
18
19
21 private:
23 LeafNodeLightWeakPtr weak_ptr_;
24
26 ::osg::LightSourceRefPtr light_ptr_;
27
28 void init();
29
30 /* Default constructor */
31 LeafNodeLight(const std::string& name, const float& radius);
32 LeafNodeLight(const std::string& name, const float& radius,
33 const osgVector4& color);
34
35 /* Copy constructor */
36 LeafNodeLight(const std::string& name, const LeafNodeLight& other);
37
39 void initWeakPtr(LeafNodeLightWeakPtr other_weak_ptr);
40
41 static int uniqueLightNumber;
42
43 protected:
44 public:
47 static LeafNodeLightPtr_t create(const std::string& name,
48 const float& radius);
49 static LeafNodeLightPtr_t create(const std::string& name, const float& radius,
50 const osgVector4& color);
51
55 static LeafNodeLightPtr_t createCopy(LeafNodeLightPtr_t other);
56
59 LeafNodeLightPtr_t clone(void) const;
60
64 LeafNodeLightPtr_t copy() const { return clone(); }
65
68 LeafNodeLightPtr_t self(void) const;
69
72 virtual void setColor(const osgVector4& color);
73
74 void setRoot(GroupNodePtr_t root);
75
77
79 virtual ~LeafNodeLight();
80};
81} /* namespace viewer */
82} /* namespace gepetto */
83
84#endif /* GEPETTO_VIEWER_LEAFNODELIGHT_HH */
Definition leaf-node-light.h:20
virtual void setColor(const osgVector4 &color)
static LeafNodeLightPtr_t createCopy(LeafNodeLightPtr_t other)
static LeafNodeLightPtr_t create(const std::string &name, const float &radius, const osgVector4 &color)
LeafNodeLightPtr_t self(void) const
LeafNodeLightPtr_t clone(void) const
SCENE_VIEWER_ACCEPT_VISITOR
Definition leaf-node-light.h:76
void setRoot(GroupNodePtr_t root)
LeafNodeLightPtr_t copy() const
Proceed to a copy of the currend object as clone.
Definition leaf-node-light.h:64
static LeafNodeLightPtr_t create(const std::string &name, const float &radius)
Definition leaf-node-sphere.h:19
::osg::Vec4f osgVector4
Definition config-osg.h:100
#define DEF_CLASS_SMART_PTR(className)
Definition macros.h:51
Definition action-search-bar.hh:27