OpenMAMA C++ API
MamaSourceDerivative.h
Go to the documentation of this file.
1 /* $Id$
2  *
3  * OpenMAMA: The open middleware agnostic messaging API
4  * Copyright (C) 2011 NYSE Technologies, Inc.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19  * 02110-1301 USA
20  */
21 
22 #ifndef MAMA_SOURCE_DERIVATIVE_CPP_H__
23 #define MAMA_SOURCE_DERIVATIVE_CPP_H__
24 
25 #include <mama/MamaSource.h>
26 
27 
28 namespace Wombat
29 {
30 
38  class MAMACPPExpDLL MamaSourceDerivative : public MamaSource
39  {
40  public:
46  MamaSourceDerivative (const MamaSource* baseSource);
47  virtual ~MamaSourceDerivative ();
48 
49  virtual void setQuality (mamaQuality quality);
50  virtual void setState (mamaSourceState state);
51  virtual mamaQuality getQuality () const;
52  virtual mamaSourceState getState () const;
53 
54  virtual MamaSourceDerivative* find (const char* sourceName);
55  virtual const MamaSourceDerivative* find (const char* sourceName) const;
56 
57 
58  const MamaSource* getBaseSource () const
59  {
60  return myBaseSource;
61  }
62 
63  private:
64  const MamaSource* myBaseSource;
65  mamaQuality myQuality;
66  mamaSourceState myState;
67 
68  // No copy contructor nor assignment operator.
70  MamaSourceDerivative& operator= (const MamaSourceDerivative& rhs);
71  };
72 
73 } // namespace Wombat
74 
75 
76 #endif // MAMA_SOURCE_DERIVATIVE_CPP_H__
A MAMA source maintains information about a data source, including the quality of the data coming fro...
Definition: MamaSource.h:55
A MamaSourceDerivative provides a reference to a common MamaSource object but can have attributes (su...
Definition: MamaSourceDerivative.h:38
Definition: MamaConnection.h:29
const MamaSource * getBaseSource() const
Definition: MamaSourceDerivative.h:58