sipxmedialib  Version 3.3
MpVideoResource.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2006-2011 SIPez LLC. All rights reserved
3 // Licensed to SIPfoundry under a Contributor Agreement.
4 //
5 // Copyright (C) 2004-2006 SIPfoundry Inc.
6 // Licensed by SIPfoundry under the LGPL license.
7 //
8 // $$
10 
11 
12 #ifndef _MpVideoResource_h_
13 #define _MpVideoResource_h_
14 
15 // SYSTEM INCLUDES
16 
17 // APPLICATION INCLUDES
18 #include <mp/MpResource.h>
19 #include <mp/MpBuf.h>
20 
21 // DEFINES
22 // MACROS
23 // EXTERNAL FUNCTIONS
24 // EXTERNAL VARIABLES
25 // CONSTANTS
26 // STRUCTS
27 // TYPEDEFS
28 
30 
36 {
37 /* //////////////////////////// PUBLIC //////////////////////////////////// */
38 public:
39 
40 /* ============================ CREATORS ================================== */
42 
43 
45  MpVideoResource(const UtlString& rName,
46  int minInputs, int maxInputs,
47  int minOutputs, int maxOutputs);
48 
50  virtual ~MpVideoResource();
51 
53 
54 /* ============================ MANIPULATORS ============================== */
56 
57 
59  virtual UtlBoolean processFrame(void);
69 
70 /* ============================ ACCESSORS ================================= */
72 
73 
75 
76 /* ============================ INQUIRY =================================== */
78 
79 
81 
82 /* //////////////////////////// PROTECTED ///////////////////////////////// */
83 protected:
84 
87  virtual UtlBoolean doProcessFrame(MpBufPtr inBufs[],
88  MpBufPtr outBufs[],
89  int inBufsSize,
90  int outBufsSize,
91  UtlBoolean isEnabled
92  ) = 0;
103 /* //////////////////////////// PRIVATE /////////////////////////////////// */
104 private:
105 
107  MpVideoResource(const MpVideoResource& rMpResource);
108 
111 
112 };
113 
114 /* ============================ INLINE METHODS ============================ */
115 
116 #endif // _MpVideoResource_h_
int minInputs() const
Returns the minimum number of inputs required by this resource.
Definition: MpResource.cpp:363
virtual ~MpVideoResource()
Destructor.
Definition: MpVideoResource.cpp:42
int minOutputs() const
Returns the minimum number of outputs required by this resource.
Definition: MpResource.cpp:369
Abstract base class for all video processing objects.
Definition: MpVideoResource.h:35
virtual UtlBoolean doProcessFrame(MpBufPtr inBufs[], MpBufPtr outBufs[], int inBufsSize, int outBufsSize, UtlBoolean isEnabled)=0
This method does the real work for the media processing resource and must be defined in each class de...
MpVideoResource & operator=(const MpVideoResource &rhs)
Assignment operator (not implemented for this class)
MpVideoResource(const UtlString &rName, int minInputs, int maxInputs, int minOutputs, int maxOutputs)
Constructor.
Definition: MpVideoResource.cpp:34
Smart pointer to MpBuf.
Definition: MpBuf.h:160
int maxOutputs() const
Returns the maximum number of outputs supported by this resource.
Definition: MpResource.cpp:357
int maxInputs() const
Returns the maximum number of inputs supported by this resource.
Definition: MpResource.cpp:351
Abstract base class for all media processing objects.
Definition: MpResource.h:56
virtual UtlBoolean processFrame(void)
Wrapper around doProcessFrame().
Definition: MpVideoResource.cpp:54
UtlBoolean isEnabled() const
Returns TRUE is this resource is currently enabled, FALSE otherwise.
Definition: MpResource.cpp:440