VR-Engage  2.2
Loading...
Searching...
No Matches
cigiIgControlPublisher.h
Go to the documentation of this file.
1/*******************************************************************************
2** Copyright (c) 2024 MAK Technologies, Inc.
3** All rights reserved.
4*******************************************************************************/
5#pragma once
6
7//! @file cigiIgControlPublisher.h
8//!
9//! @brief Publishes CIGI IG Control packets.
10//!
11//! Only one IG Control instances should be created per-session. Serves as root
12//! publisher for the Session. All other Publishers in the Session must be added
13//! as children of the root IG Control Publisher.
14
15#include "vreCigiHost/export.h"
18
20
21#include <CigiBaseIGCtrl.h>
22
23namespace makVre
24{
25
26class CIGIHOST_DLL DtCigiIgControlPublisher : public DtCigiPublisherTemplate<CigiBaseIGCtrl, DtCigiIgControlPublisher>
27{
28public:
30 virtual ~DtCigiIgControlPublisher() override;
31
32 //! @brief Accessor for the PublisherGroup containing all SimEntityPublishers in the Session
34
35 //! @brief Accessor for the PublisherGroup containing all ViewDefinitionPublishers in the Session
37
38 //! @brief Accessor for the PublisherGroup containing all ViewControlPublishers in the Session
40
41 //! @brief Accessor for the PublisherGroup containing all EntityUnpublishers in the Session
43
44 virtual bool isDirty() const override;
45
46 virtual bool init() override;
47 virtual void shutdown();
48
49 virtual void setLastReceivedIgFrame(Cigi_uint32 frame) = 0;
50
51protected:
52 virtual void updateCigi() override;
53
54 virtual void createChildren() override;
55 virtual void tickChildren(double dt) override;
56 virtual void publishChildren(CigiOutgoingMsg& out) override;
57
60};
61
62} // namespace makVre
virtual DtCigiPublisherGroup::Sptr simEntityGroup()
Accessor for the PublisherGroup containing all SimEntityPublishers in the Session.
virtual void setLastReceivedIgFrame(Cigi_uint32 frame)=0
DtCigiIgControlPublisher()
Definition cigiIgControlPublisher.h:29
virtual bool init() override
virtual DtCigiPublisherGroup::Sptr unpublishGroup()
Accessor for the PublisherGroup containing all EntityUnpublishers in the Session.
virtual DtVreMessageResult handleCigiViewControlMessage(DtVreMessage *msg)
virtual ~DtCigiIgControlPublisher() override
virtual bool isDirty() const override
virtual void publishChildren(CigiOutgoingMsg &out) override
virtual void updateCigi() override
Derived Publisher classes should override updateCigi() to update values in the CIGI data.
virtual DtVreMessageResult handleCigiViewDefinitionMessage(DtVreMessage *msg)
virtual DtCigiPublisherGroup::Sptr viewControlGroup()
Accessor for the PublisherGroup containing all ViewControlPublishers in the Session.
virtual void tickChildren(double dt) override
virtual void createChildren() override
Derived Publisher classes should override createChildre() to create child Publishers,...
virtual DtCigiPublisherGroup::Sptr viewDefinitionGroup()
Accessor for the PublisherGroup containing all ViewDefinitionPublishers in the Session.
std::shared_ptr< DtSpObject > Sptr
Shared pointer type alias.
Definition baseClass.h:99
Abstract base class for all VREngage messages.
Definition vreMessage.h:50
Contains the DLL export macro.
#define CIGIHOST_DLL
Definition export.h:20
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
DtVreMessageResult
Enumeration of possible message handling results.
Definition vreMessage.h:33
Defines the base class for all VREngage messages.