26 #ifndef CASADI_IPOPT_UOUT_JOURNAL_HPP
27 #define CASADI_IPOPT_UOUT_JOURNAL_HPP
29 #include "casadi/core/casadi_logger.hpp"
30 #include <IpJournalist.hpp>
49 class UoutJournal :
public Ipopt::Journal {
51 UoutJournal(
const std::string& name, Ipopt::EJournalLevel default_level)
52 : Ipopt::Journal(name, default_level) {}
55 void PrintImpl(Ipopt::EJournalCategory, Ipopt::EJournalLevel,
const char* str)
override {
59 void PrintfImpl(Ipopt::EJournalCategory, Ipopt::EJournalLevel,
60 const char* pformat, va_list ap)
override {
63 int n = std::vsnprintf(
nullptr, 0, pformat, ap2);
66 std::vector<char> buf(n + 1);
67 std::vsnprintf(buf.data(), buf.size(), pformat, ap);
71 void FlushBufferImpl()
override {
CASADI_EXPORT std::ostream & uout()