/usr/include/mamda/MamdaOrderBookEntryManager.h is in libmamda-dev 2.2.2.1-10.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | /* $Id$
*
* OpenMAMA: The open middleware agnostic messaging API
* Copyright (C) 2011 NYSE Technologies, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA
*/
#ifndef MamdaOrderBookEntryManagerH
#define MamdaOrderBookEntryManagerH
#include <mamda/MamdaOptionalConfig.h>
#include <mamda/MamdaOrderBookEntry.h>
#include <mamda/MamdaOrderBookExceptions.h>
namespace Wombat
{
/**
* MamdaOrderBookEntryManager is a class that provides a global order
* book lookup service, matching entry IDs that are unique across a
* set of order books. Some data sources do not provide a symbol when
* sending updated or deletions for order book entries. The primary
* purpose of this class is to return access to the actual order book
* entry represented by a unique entry ID and, therefore, also
* (indirectly, via methods available from the book entry object) the
* the order book itself.
*/
class MAMDAOPTExpDLL MamdaOrderBookEntryManager
{
public:
/**
* Default constructor. Create an empty order book entry manager.
*/
MamdaOrderBookEntryManager (mama_u32_t approxCount);
/**
* Destructor.
*/
~MamdaOrderBookEntryManager ();
/**
* Clear all entries from the manager.
*/
void clear ();
/**
* Clear all entries for a particular symbol from the manager.
*/
void clear (const char* symbol);
/**
* Add an entry to the manager. This method may throw a
* MamdaOrderBookDuplicateEntry exception.
*/
void addEntry (MamdaOrderBookEntry* entry);
/**
* Add an entry to the manager using a specific entry ID, which
* may be different from the entry's entry ID. This method may
* throw a MamdaOrderBookDuplicateEntry exception.
*/
void addEntry (MamdaOrderBookEntry* entry,
const char* entryId);
/**
* Find an entry in the manager. If no entry matches the unique
* entry ID and "mustExist" is true then a
* MamdaOrderBookMissingEntry exception is thrown, otherwise it
* returns NULL.
*/
MamdaOrderBookEntry* findEntry (const char* entryId,
bool mustExist);
/**
* Remove an entry from the manager. This method does not
* actually delete the MamdaOrderBookEntry object itself.
*/
void removeEntry (const char* entryId);
/**
* Remove an entry from the manager. This method does not
* actually delete the MamdaOrderBookEntry object itself.
*/
void removeEntry (MamdaOrderBookEntry* entry);
/**
* Dump (print) all of the entries in this manager to the output
* stream.
*/
void dump (std::ostream& output) const;
private:
/**
* No copy constructor.
*/
MamdaOrderBookEntryManager (const MamdaOrderBookEntryManager&);
/**
* No assignment operator.
*/
MamdaOrderBookEntryManager& operator= (const MamdaOrderBookEntryManager&);
struct MamdaOrderBookEntryManagerImpl;
MamdaOrderBookEntryManagerImpl& mImpl;
};
} // namespace
#endif // MamdaOrderBookEntryManagerH
|