Gorgon Game Engine
ConsoleInput Class Reference

Reads lines from the console. More...

Inheritance diagram for ConsoleInput:
[legend]

Public Member Functions

 ConsoleInput (Dialect dialect=InputProvider::Console, const std::string &prompt="> ")
 Initializes console input. line number will be appended at the start of the prompt. More...
 
virtual bool IsInteractive () const override
 Returns if this input provider allows interaction. More...
 
virtual bool ReadLine (std::string &input, bool newline) override final
 This method should read a single physical line from the source. More...
 
virtual void Reset () override
 Resets the input to the beginning. More...
 
void SetPrompt (const std::string &prompt)
 
- Public Member Functions inherited from InputProvider
 InputProvider (Dialect dialect)
 
Dialect GetDialect () const
 Returns the current dialect of the input. More...
 
std::string GetName () const
 
void SetDialect (Dialect dialect)
 Changes the current dialect of the input. More...
 

Protected Member Functions

virtual void checkdialect () override
 

Additional Inherited Members

- Public Types inherited from InputProvider
enum  Dialect { Console, Programming, Intermediate, Binary }
 
- Protected Attributes inherited from InputProvider
Dialect dialect
 
std::string name
 

Detailed Description

Reads lines from the console.

Constructor & Destructor Documentation

◆ ConsoleInput()

ConsoleInput ( Dialect  dialect = InputProvider::Console,
const std::string &  prompt = "> " 
)

Initializes console input. line number will be appended at the start of the prompt.

References InputProvider::name.

Member Function Documentation

◆ checkdialect()

virtual void checkdialect ( )
overrideprotectedvirtual

◆ IsInteractive()

virtual bool IsInteractive ( ) const
overridevirtual

Returns if this input provider allows interaction.

Reimplemented from InputProvider.

◆ ReadLine()

virtual bool ReadLine ( std::string &  ,
bool  newline 
)
finaloverridevirtual

This method should read a single physical line from the source.

Logical line separation is handled by InputSource. Return of false means no input is fetched as it is finished. If there is a read error, rather than returning false, this function should throw. newline parameter denotes that this line is a new line, not continuation of another.

Implements InputProvider.

◆ Reset()

virtual void Reset ( )
overridevirtual

Resets the input to the beginning.

Implements InputProvider.

◆ SetPrompt()

void SetPrompt ( const std::string &  prompt)

The documentation for this class was generated from the following file: