Main Page
Namespaces
Classes
Files
File List
File Members
MamdaOrderBookBasicDeltaList.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 MamdaOrderBookBasicDeltaListH
23
#define MamdaOrderBookBasicDeltaListH
24
25
#include <
mamda/MamdaOptionalConfig.h
>
26
#include <
mamda/MamdaOrderBookBasicDelta.h
>
27
#include <iosfwd>
28
29
using
std::ostream;
30
31
namespace
Wombat
32
{
33
43
class
MAMDAOPTExpDLL
MamdaOrderBookBasicDeltaList
44
{
45
public
:
46
MamdaOrderBookBasicDeltaList
();
47
~
MamdaOrderBookBasicDeltaList
();
48
52
void
clear ();
53
62
void
setKeepBasicDeltas (
bool
keep);
63
64
enum
ModifiedSides
65
{
66
MOD_SIDES_NONE = 0,
67
MOD_SIDES_BID = 1,
68
MOD_SIDES_ASK = 2,
69
MOD_SIDES_BID_AND_ASK = 3
70
};
71
80
ModifiedSides getModifiedSides()
const
;
81
86
void
add (
MamdaOrderBookEntry
* entry,
87
MamdaOrderBookPriceLevel
* level,
88
mama_quantity_t plDeltaSize,
89
MamdaOrderBookPriceLevel::Action
plAction,
90
MamdaOrderBookEntry::Action
entryAction);
91
96
void
add (
const
MamdaOrderBookBasicDelta
& delta);
97
103
void
setOrderBook (
MamdaOrderBook
* book);
104
110
MamdaOrderBook
* getOrderBook()
const
;
111
115
mama_size_t getSize()
const
;
116
122
void
fixPriceLevelActions();
123
128
void
setConflateDeltas (
bool
conflate);
129
133
bool
getSendImmediately ();
134
135
141
void
setProcessEntries (
bool
processEntries);
142
148
void
dump (ostream& output)
const
;
149
154
class
MAMDAOPTExpDLL
iterator
155
{
156
protected
:
157
friend
class
MamdaOrderBookBasicDeltaList
;
158
struct
iteratorImpl;
159
iteratorImpl&
mImpl
;
160
public
:
161
iterator
();
162
iterator
(
const
iterator
& copy);
163
iterator
(
const
iteratorImpl& copy);
164
iterator
(iteratorImpl& copy);
165
166
~
iterator
();
167
iterator
& operator= (
const
iterator
& rhs);
168
iterator
& operator++ ();
169
const
iterator
& operator++ ()
const
;
170
bool
operator== (
const
iterator
& rhs)
const
;
171
bool
operator!= (
const
iterator
& rhs)
const
;
172
MamdaOrderBookBasicDelta
* operator* ();
173
const
MamdaOrderBookBasicDelta
* operator* ()
const
;
174
};
175
176
typedef
const
iterator
const_iterator
;
177
178
iterator
begin();
179
const_iterator begin()
const
;
180
iterator
end();
181
const_iterator end()
const
;
182
183
private
:
184
struct
MamdaOrderBookBasicDeltaListImpl;
185
MamdaOrderBookBasicDeltaListImpl& mImpl;
186
187
// No copy constructor nor assignment operator.
188
MamdaOrderBookBasicDeltaList
(
const
MamdaOrderBookBasicDeltaList
&);
189
MamdaOrderBookBasicDeltaList
& operator= (
const
MamdaOrderBookBasicDeltaList
&);
190
};
191
192
}
// namespace
193
194
#endif // MamdaOrderBookBasicDeltaListH
Wombat::MamdaOrderBookBasicDeltaList::const_iterator
const iterator const_iterator
Definition:
MamdaOrderBookBasicDeltaList.h:176
MamdaOptionalConfig.h
Wombat::MamdaOrderBookBasicDeltaList::iterator::mImpl
iteratorImpl & mImpl
Definition:
MamdaOrderBookBasicDeltaList.h:158
MamdaOrderBookBasicDelta.h
Wombat::MamdaOrderBookEntry
MamdaOrderBookEntry is a class that represents an entry within a price level of an order book...
Definition:
MamdaOrderBookEntry.h:48
Wombat
MamdaOrderImbalanceUpdate is an interface that provides access to order imbalance related fields...
Definition:
MamdaAuctionFields.h:29
Wombat::MamdaOrderBook
MamdaOrderBook is a class that provides order book functionality, including iterators over price leve...
Definition:
MamdaOrderBook.h:47
Wombat::MamdaOrderBookBasicDeltaList
MamdaOrderBookBasicDeltaList is a class that saves information about an order book delta that involve...
Definition:
MamdaOrderBookBasicDeltaList.h:43
Wombat::MamdaOrderBookBasicDeltaList::ModifiedSides
ModifiedSides
Definition:
MamdaOrderBookBasicDeltaList.h:64
Wombat::MamdaOrderBookBasicDelta
MamdaOrderBookBasicDelta is a class that saves information about a basic order book delta...
Definition:
MamdaOrderBookBasicDelta.h:45
Wombat::MamdaOrderBookEntry::Action
Action
An enumeration for book entry actions.
Definition:
MamdaOrderBookEntry.h:57
Wombat::MamdaOrderBookBasicDeltaList::iterator
The MamdaOrderBookBasicDeltaList's iterator provides access to the list of MamdaOrderBookBasicDelta o...
Definition:
MamdaOrderBookBasicDeltaList.h:154
Wombat::MamdaOrderBookPriceLevel::Action
Action
An enumeration for price level actions.
Definition:
MamdaOrderBookPriceLevel.h:53
Wombat::MamdaOrderBookPriceLevel
MamdaOrderBookPriceLevel is a class that provides a price level type for order books.
Definition:
MamdaOrderBookPriceLevel.h:44
© 2012 Linux Foundation