VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTcpTaskElement.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 
15 
16 class DtInetSocket;
17 class DtInetTcpSocket;
18 class DtInetSocketMgr;
19 
20 namespace makVrv
21 {
22  class DtVideoFrameBuffer;
23 
29  {
30  public:
34 
36  virtual ~DtTcpTaskElement();
37 
39  virtual void setPort( int port );
40 
42  virtual int port() const;
43 
45  virtual void setFromRecord(
46  const makArchives::DtImageTaskRecord& config );
47 
49  virtual bool configure();
50 
51  protected:
53  DtTcpTaskElement( DtDe& de, DtProcessImageTask* owningTask );
54 
56  void handlePreFrame();
57 
59  void handleProcessFrame( DtVideoFrameBuffer* frame );
60 
62  bool handleSocketAddition( DtInetSocket* socket );
63 
65  bool handleSocketRemoval( DtInetSocket* socket );
66 
67  protected:
70  static bool socketAdditionCallback(DtInetSocket* sock, void* usr);
71 
74  static bool socketRemovalCallback(DtInetSocket* sock, void* usr);
75 
76  private:
79 
81  DtTcpTaskElement( const DtTcpTaskElement& orig );
82 
84  DtTcpTaskElement& operator=( const DtTcpTaskElement& rhs );
85 
86 
87  protected:
88  int myPort;
89  DtInetSocketMgr* mySocketManager;
90  DtInetTcpSocket* myConnectedSocket;
91  };
92 
98  {
99  public:
101  friend class DtVideoStreamManager;
102 
105 
107  virtual ~DtTcpTaskElementCreator();
108 
109  protected:
111  virtual DtImageTaskElement* create( DtDe& de,
112  DtProcessImageTask* owningTask );
113  };
114 }
Record for a sensor definition.
Definition: DtImageTaskRecord.h:20
#define DT_DLL_VRVVIDEOSTREAM
Definition: vrvVideoStream.h:20
DtVideoStreamManager is a singleton class that manages DtVideoStreams in VR-Vantage.
Definition: DtVideoStreamManager.h:35
The DtImageTaskElement is an abstract base class for all image task elements. It defines the common i...
Definition: DtImageTaskElement.h:25
A DtTcpTaskElement instance will create a pipeline element that can output the image being streamed t...
Definition: DtTcpTaskElement.h:28
DtInetTcpSocket * myConnectedSocket
Definition: DtTcpTaskElement.h:90
A DtTcpTaskElementCreator instance is registered with the image task element factory to create DtTcpT...
Definition: DtTcpTaskElement.h:96
DtImageTaskElementCreator is the common base class for all image task element creators.
Definition: DtImageTaskElement.h:95
DtProcessImageTask creates and manages all the process image pipeline elements.
Definition: DtProcessImageTask.h:35
Contains declarations needed to initialize the freeImage library.
int myPort
Definition: DtTcpTaskElement.h:88
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
Contains DLL export macros.
The image as initially captured from the camera is placed into a DtVideoFrameBuffer. Instances of DtVideoFrameBuffer are placed on a queue for further processing by the process image task elements.
Definition: DtVideoFrameBuffer.h:20
DtInetSocketMgr * mySocketManager
Definition: DtTcpTaskElement.h:89

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)