13 #include <adtf_filtersdk.h>
15 #include <adtf_base.h>
16 #include <adtf_ucom3.h>
17 #include <adtf_streaming3.h>
21 namespace osgText {
class Font;}
22 namespace osg {
class Node; }
23 namespace osg {
class Group; }
69 virtual tVoid
SetScale(
const osg::Vec3d& oScale) = 0;
91 class cMixin:
public ucom::catwo::object<filter::hollow::cFilter, INodeHandler, IMenuEventSink>,
92 public ucom::ant::enable_object_ptr_from_this<cMixin>
136 tResult HandleMenuEvent(
const tChar* strMenuText,
137 tVoid* pvEventData)
override;
179 tResult Init(tInitStage eStage)
override;
180 tResult Shutdown(tInitStage eStage)
override;
181 tResult GetName(base::ant::IString&& strName)
const override;
182 tResult
OnPick(tInt32 nPosX,
186 IMenu& oMenu)
override;
188 tResult Process(base::flash::tNanoSeconds tmTrigger,
189 streaming::ant::IRunner* pRunner)
override;
190 tResult ProcessInput(base::flash::tNanoSeconds tmTrigger,
191 streaming::flash::ISampleReader* pReader)
override;
208 class cImplementation;
Interface for accessing and manipulating a coordinate system created with cMixin::CreateCoordinateSys...
virtual tVoid SetAttitude(const osg::Quat &oQuat)=0
Set the attitude of the coordinate system.
virtual osg::Group * GetRoot()=0
Use this to add nodes within the coordinate system.
virtual tVoid SetPosition(const osg::Vec3d &oPos)=0
Set the position of the coordinate system.
virtual tVoid SetScale(const osg::Vec3d &oScale)=0
Set the scale of the coordinate system.
~IChildCoordinateSystem()=default
not destructable
virtual tVoid SetPivotPoint(const osg::Vec3d &oPivot)=0
Set the pivot point of the coordinate system.
Interface for the scene graph of a 3D Scene Display.
Base class for Mixin Filters.
osgText::Font * GetFont()
Returns a pointer to a valid Font, use this for your osgText nodes.
virtual tResult AddMenuItemForPick(IMenu &oMenu, const tNodePath &sNodePath)
Return context menu entries for one of your nodes.
IChildCoordinateSystem * CreateCoordinateSystem(const tChar *strName)
Creates a new coordinate system.
virtual tResult InitScene()
Impelement this to add your graph elements.
virtual tResult AddGlobalMenuItem(IMenu &oMenu)
Add global menu entries not related to a specific one of your nodes.
osg::Group * GetRoot()
Add your nodes to this group.
virtual tResult OnPick(tInt32 nPosX, tInt32 nPosY, tUInt32 nFlags, const tNodePath &sNodePath)
Handle a left click on one of your nodes.
std::unique_ptr< cImplementation > m_pImplementation
D-Pointer implementation.
virtual tVoid ClearScene()
Use this to clean up your graph elements.
std::vector< const osg::Node * > GetLastMenuPath()
~cMixin() override
Destructor.
ISceneGraph & GetSceneGraph()
Access the ISceneGraph interface.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.