#ifndef ADVICE_H_5934AC1B #define ADVICE_H_5934AC1B #include #include #include #include #include #include #include #include "sentence.h" class advice { public: advice( std::string configFile, std::mt19937& rng); void run() const; private: class could_not_get_images : public std::runtime_error { public: could_not_get_images() : std::runtime_error("Could not get images for noun") { } }; verbly::word generateImageNoun() const; Magick::Image getImageForNoun(verbly::word pictured) const; Magick::Image layoutImage(Magick::Image bg, std::string title) const; void sendTweet(Magick::Image pic, std::string title) const; std::mt19937& rng_; std::unique_ptr database_; std::unique_ptr generator_; std::unique_ptr client_; }; #endif /* end of include guard: ADVICE_H_5934AC1B */