| 
<?php
 /*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <[email protected]>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
 
 namespace Symfony\Component\Console\Output;
 
 use Symfony\Component\Console\Formatter\OutputFormatterInterface;
 
 /**
 * OutputInterface is the interface implemented by all Output classes.
 *
 * @author Fabien Potencier <[email protected]>
 */
 interface OutputInterface
 {
 const VERBOSITY_QUIET = 16;
 const VERBOSITY_NORMAL = 32;
 const VERBOSITY_VERBOSE = 64;
 const VERBOSITY_VERY_VERBOSE = 128;
 const VERBOSITY_DEBUG = 256;
 
 const OUTPUT_NORMAL = 1;
 const OUTPUT_RAW = 2;
 const OUTPUT_PLAIN = 4;
 
 /**
 * Writes a message to the output.
 *
 * @param string|array $messages The message as an array of lines or a single string
 * @param bool         $newline  Whether to add a newline
 * @param int          $options  A bitmask of options (one of the OUTPUT or VERBOSITY constants), 0 is considered the same as self::OUTPUT_NORMAL | self::VERBOSITY_NORMAL
 */
 public function write($messages, $newline = false, $options = 0);
 
 /**
 * Writes a message to the output and adds a newline at the end.
 *
 * @param string|array $messages The message as an array of lines of a single string
 * @param int          $options  A bitmask of options (one of the OUTPUT or VERBOSITY constants), 0 is considered the same as self::OUTPUT_NORMAL | self::VERBOSITY_NORMAL
 */
 public function writeln($messages, $options = 0);
 
 /**
 * Sets the verbosity of the output.
 *
 * @param int $level The level of verbosity (one of the VERBOSITY constants)
 */
 public function setVerbosity($level);
 
 /**
 * Gets the current verbosity of the output.
 *
 * @return int The current level of verbosity (one of the VERBOSITY constants)
 */
 public function getVerbosity();
 
 /**
 * Returns whether verbosity is quiet (-q).
 *
 * @return bool true if verbosity is set to VERBOSITY_QUIET, false otherwise
 */
 public function isQuiet();
 
 /**
 * Returns whether verbosity is verbose (-v).
 *
 * @return bool true if verbosity is set to VERBOSITY_VERBOSE, false otherwise
 */
 public function isVerbose();
 
 /**
 * Returns whether verbosity is very verbose (-vv).
 *
 * @return bool true if verbosity is set to VERBOSITY_VERY_VERBOSE, false otherwise
 */
 public function isVeryVerbose();
 
 /**
 * Returns whether verbosity is debug (-vvv).
 *
 * @return bool true if verbosity is set to VERBOSITY_DEBUG, false otherwise
 */
 public function isDebug();
 
 /**
 * Sets the decorated flag.
 *
 * @param bool $decorated Whether to decorate the messages
 */
 public function setDecorated($decorated);
 
 /**
 * Gets the decorated flag.
 *
 * @return bool true if the output will decorate messages, false otherwise
 */
 public function isDecorated();
 
 /**
 * Sets output formatter.
 *
 * @param OutputFormatterInterface $formatter
 */
 public function setFormatter(OutputFormatterInterface $formatter);
 
 /**
 * Returns current output formatter instance.
 *
 * @return OutputFormatterInterface
 */
 public function getFormatter();
 }
 
 |