void onTradeRecap (
     MamdaSubscription*      subscription,
     MamdaTradeListener&     listener,
     const MamaMsg&          msg,
     const MamdaTradeRecap&  recap)
 {
     cout << "Trade Recap (" << recap.getSymbol ()
          << " ("            << recap.getPartId () << ")" << "): \n";
 }
 void onTradeClosing (
     MamdaSubscription*              subscription,
     MamdaTradeListener&             listener,
     const MamaMsg&                  msg,
     const MamdaTradeClosing&        event,
     const MamdaTradeRecap&          recap)
 {
     cout << "Closing trade (" << recap.getSymbol ()
          << " ("              << recap.getPartId () << ")): "
          << "price: "         << event.getClosePrice().getAsString()
          << "; accVol: "      << recap.getAccVolume ()
          << "\n";
 }
 void onTradeReport (
     MamdaSubscription*      subscription,
     MamdaTradeListener&     listener,
     const MamaMsg&          msg,
     const MamdaTradeReport& event,
     const MamdaTradeRecap&  recap)
 {
     cout << "Trade ("       << recap.getSymbol ()
          << " ("            << recap.getPartId () << ")"
          << ":"             << recap.getTradeCount ()
          << "):  "          << event.getTradeVolume ()
          << " @ "           << event.getTradePrice().getAsString()
          << " (seq#: "      << event.getEventSeqNum ()
          << "; partId: "    << event.getTradePartId ()
          << "; srcTime: "   << event.getSrcTime().getAsString()
          << "; lineTime: "  << event.getLineTime().getAsString()
          << "; tradeTime: " << event.getEventTime().getAsString()
          << "; acttime: "   << event.getActivityTime().getAsString()
          << "; qual: "      << event.getTradeQual ()
          << "; bid: "       << mQuoteListener.getBidPrice().getAsString()
          << "; ask; "       << mQuoteListener.getAskPrice().getAsString()
          << ")\n";
 }