sipxmedialib  Version 3.3
MpResourceConstructor.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2006-2007 SIPfoundry Inc.
3 // Licensed by SIPfoundry under the LGPL license.
4 //
5 // Copyright (C) 2006-2007 SIPez LLC.
6 // Licensed to SIPfoundry under a Contributor Agreement.
7 //
8 // $$
10 
11 // Author: Dan Petrie <dpetrie AT SIPez DOT com>
12 
13 #ifndef _MpResourceConstructor_h_
14 #define _MpResourceConstructor_h_
15 
16 // SYSTEM INCLUDES
17 // APPLICATION INCLUDES
18 #include <utl/UtlString.h>
19 
20 // DEFINES
21 // MACROS
22 // EXTERNAL FUNCTIONS
23 // EXTERNAL VARIABLES
24 // CONSTANTS
25 // STRUCTS
26 // TYPEDEFS
27 // FORWARD DECLARATIONS
28 
36 class MpResourceConstructor : public UtlString
37 {
38 /* //////////////////////////// PUBLIC //////////////////////////////////// */
39 public:
40 
41 /* ============================ CREATORS ================================== */
42 
45  MpResourceConstructor(const UtlString& resourceType,
46  int minInputs = 1,
47  int maxInputs = 1,
48  int minOutputs = 1,
49  int maxOutputs = 1)
50  : UtlString(resourceType)
51  , mMinInputs(minInputs)
52  , mMaxInputs(maxInputs)
53  , mMinOutputs(minOutputs)
54  , mMaxOutputs(maxOutputs)
55  {
56  };
57 
61 
62 /* ============================ MANIPULATORS ============================== */
63 
65  virtual OsStatus newResource(const UtlString& resourceName,
66  int maxResourcesToCreate,
67  int& numResourcesCreated,
68  MpResource* resourcesCreated[]) = 0;
84 /* ============================ ACCESSORS ================================= */
85 
86 /* ============================ INQUIRY =================================== */
87 
88 /* //////////////////////////// PROTECTED ///////////////////////////////// */
89 protected:
90 
95 
96 /* //////////////////////////// PRIVATE /////////////////////////////////// */
97 private:
98 
101 
104  MpResourceConstructor(const MpResourceConstructor& rMpResourceConstructor);
105 
106 
110 
111 };
112 
113 /* ============================ INLINE METHODS ============================ */
114 
115 #endif // _MpResourceConstructor_h_
int mMinOutputs
Definition: MpResourceConstructor.h:93
int mMinInputs
Definition: MpResourceConstructor.h:91
virtual OsStatus newResource(const UtlString &resourceName, int maxResourcesToCreate, int &numResourcesCreated, MpResource *resourcesCreated[])=0
Create new resource(s)
MpResourceConstructor(const UtlString &resourceType, int minInputs=1, int maxInputs=1, int minOutputs=1, int maxOutputs=1)
Definition: MpResourceConstructor.h:45
MpResourceConstructor is used to construct a spcific resource type.
Definition: MpResourceConstructor.h:36
MpResourceConstructor()
Disable default constructor.
int mMaxInputs
Definition: MpResourceConstructor.h:92
MpResourceConstructor & operator=(const MpResourceConstructor &rhs)
int mMaxOutputs
Definition: MpResourceConstructor.h:94
Abstract base class for all media processing objects.
Definition: MpResource.h:56
virtual ~MpResourceConstructor()
Definition: MpResourceConstructor.h:60