![]() |
VR-Forces Developer's Guide
|
DtMetadataPublisher defines the interface for all metadata publishers, as well as the implementation of some standard methods.

Public Types | |
| typedef std::vector < DtMetadataElement * > | MetadataElementList |
Public Member Functions | |
| virtual | ~DtMetadataPublisher () |
| virtual void | realize (const makArchives::DtMetadataPublisherRecord &metadataConfig) |
| virtual void | setObserverName (const DtUnicode &observerName) |
| virtual bool | isAttached () |
| virtual void | attachEntity (makVrv::DtUniqueID entity) |
| virtual void | detach () |
| virtual void | addMetadataElement (DtMetadataElement *element) |
| virtual MetadataElementList & | MetadataElement () |
| virtual void | tick (double dt) |
| virtual int | numBytes () |
| virtual unsigned char * | bytes () |
| virtual const DtVideoStream & | videoStream () |
| virtual const DtSceneObject & | attachedEntitySceneObject () |
| virtual const DtObserver & | observer () |
| virtual bool | haveValidTargetPoint () const |
| virtual DtVector | targetPoint () const |
| virtual DtDe & | de () |
| virtual long long | frameIndex (void) const |
Protected Member Functions | |
| DtMetadataPublisher (DtDe &de, const DtVideoStream &videoStream) | |
| virtual void | slot_attachToChanged (makVrv::DtObserver *obs) |
| virtual void | slot_destroyObserver (makVrv::DtObserver *obs) |
| virtual DtSceneObject * | findSceneObjectFromElement (const DtElementID &id) |
| virtual void | updateTargetPoint () |
Protected Attributes | |
| DtDe & | myDe |
| const DtVideoStream & | myVideoStream |
| MetadataElementList | myElements |
| DtObserver * | myObserver |
| DtChannel * | myChannel |
| DtSceneObject * | myAttachedEntitySceneObject |
| bool | myIsAttached |
| makVrv::DtUniqueID | myAttachedEntity |
| unsigned char * | myBuffer |
| int | myBufferLength |
| bool | myValidTargetPoint |
| DtVector | myTargetPoint |
| std::vector< DtElementID > | myIgnoreList |
| DtIntersector * | myIntersector = nullptr |
| long long | myFrameIndex = -1 |
Private Member Functions | |
| DtMetadataPublisher () | |
| DtMetadataPublisher (const DtMetadataPublisher &orig) | |
| DtMetadataPublisher & | operator= (const DtMetadataPublisher &rhs) |
Friends | |
| class | DtMetadataPublisherCreator |
| typedef std::vector<DtMetadataElement*> makVrv::DtMetadataPublisher::MetadataElementList |
Metadata Element list type.
|
virtual |
DTOR.
|
protected |
CTOR. Only called by creator.
|
private |
Default CTOR (unimplemented)
|
private |
Copy CTOR (unimplemented)
|
virtual |
Initialize a publisher from a DtMetadataPublisherRecord.
|
virtual |
Set the name of the observer that this publisher will track.
|
virtual |
Get whether the publisher is attached to an entity other than the observer.
|
virtual |
Tell the publisher to attach to an entity.
|
virtual |
Tell the publisher to detach from an entity (and re-attach to the named observer.
|
virtual |
Add a metadata element. A directed graph of elements can be managed by a publisher. This publisher takes ownership; it is responsible for deleting the element.
|
virtual |
Return the list of metadata element.
|
virtual |
Tick the publisher.
Reimplemented in makVrv::DtLocalMetadataPublisher, and makVrv::DtMmsMetadataPublisher.
|
virtual |
Get the publisher's buffer of metadata.
|
virtual |
Get the video stream that the metadata is being added to. Most metadata elements don't need this, but a few do; since all metadata elements have a reference to the publisher that created them. this provides a way to access it.
|
virtual |
Get the DtSceneObject that we are attached to, if attached to an entity rather than an observer (isAttached is true).
| DtCorruptedState | if not attached. Most metadata elements don't need this, but a few do; since all metadata elements have a reference to the publisher that created them. this provides a way to access it. |
|
virtual |
Get the observer that we are attached to (or assigned to if currently attached to an entity).
| DtCorruptedState | if the observer specified at initialization does not exist. Most metadata elements don't need this, but a few do; since all metadata elements have a reference to the publisher that created them. this provides a way to access it. |
|
virtual |
The publisher calculates the point intersected by a ray shot from the center of the view. This will be false if there is no intersection (a sky shot).
|
virtual |
If haveValidTargetPoint() is true, this returns it. Otherwise it is undefined.
|
virtual |
Get the local display engine object. Most metadata elements don't need this, but a few do; since all metadata elements have a reference to the publisher that created them. this provides a way to access it.
Get the frame index of the current tick.
|
protectedvirtual |
Method called when DtAttachManager::signal_attachToChanged is raised.
|
protectedvirtual |
Method called when DtObserver::~DtObserver() is called on the current observer.
|
protectedvirtual |
Look up the 3D scene object using the element ID of the entity attached to.
|
protectedvirtual |
Find the intersection with the terrain of the ray shot from the center of our observer's view.
|
private |
Assignment Operator (unimplemented)
|
friend |
Only a DtMetadataPublisherCreator may construct a DtMetadataPublisher.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
ignore list for the intersection search (contain the current attach element ID)
|
protected |