plebble
us::gov::io::screen Class Reference

#include <screen.h>

Collaboration diagram for us::gov::io::screen:

Classes

interface  supervisor
 

Public Types

typedef us::gov::crypto::ripemd160 hasher_t
 
typedef hasher_t::value_type hash_t
 

Public Member Functions

 screen (ostream &os)
 
int getch ()
 
int getche ()
 
void print_prompt ()
 
string capture_input (const supervisor &, unique_lock< mutex > &lock)
 
 screen (PrintStream os_)
 
int getch ()
 
int getche ()
 
void print_prompt ()
 
String capture_input ()
 

Public Attributes

string line
 
bool capturing {false}
 
hash_t prompt {0}
 
ostream & os
 
mutex mx
 
boolean capturing =false
 
String prompt =""
 
PrintStream os
 
final ReentrantLock lock = new ReentrantLock()
 

Package Attributes

String line =""
 
final Condition cv_print_prompt =lock.newCondition()
 
boolean prompted =false
 

Member Typedef Documentation

◆ hash_t

◆ hasher_t

Constructor & Destructor Documentation

◆ screen() [1/2]

us::gov::io::screen::screen ( ostream &  os)

◆ screen() [2/2]

us.gov.io.screen.screen ( PrintStream  os_)
inline

References os.

Member Function Documentation

◆ capture_input() [1/2]

String us.gov.io.screen.capture_input ( )
inline

References capturing, cv_print_prompt, getch(), line, lock, os, print_prompt(), and prompted.

Here is the call graph for this function:

◆ capture_input() [2/2]

string us::gov::io::screen::capture_input ( const supervisor ,
unique_lock< mutex > &  lock 
)

◆ getch() [1/2]

int us::gov::io::screen::getch ( )

Referenced by capture_input().

Here is the caller graph for this function:

◆ getch() [2/2]

int us.gov.io.screen.getch ( )
inline

References lock.

◆ getche() [1/2]

int us::gov::io::screen::getche ( )

◆ getche() [2/2]

int us.gov.io.screen.getche ( )
inline

◆ print_prompt() [1/2]

void us::gov::io::screen::print_prompt ( )

Referenced by capture_input(), and us.wallet.cli.hmi.mydispatcher::dispatch().

Here is the caller graph for this function:

◆ print_prompt() [2/2]

void us.gov.io.screen.print_prompt ( )
inline

References cv_print_prompt, line, lock, os, prompt, and prompted.

Member Data Documentation

◆ capturing [1/2]

bool us::gov::io::screen::capturing {false}

◆ capturing [2/2]

boolean us.gov.io.screen.capturing =false

◆ cv_print_prompt

final Condition us.gov.io.screen.cv_print_prompt =lock.newCondition()
package

Referenced by capture_input(), and print_prompt().

◆ line [1/2]

string us::gov::io::screen::line

Referenced by capture_input(), and print_prompt().

◆ line [2/2]

String us.gov.io.screen.line =""
package

◆ lock

final ReentrantLock us.gov.io.screen.lock = new ReentrantLock()

◆ mx

mutex us::gov::io::screen::mx

◆ os [1/2]

◆ os [2/2]

PrintStream us.gov.io.screen.os

◆ prompt [1/2]

hash_t us::gov::io::screen::prompt {0}

Referenced by print_prompt().

◆ prompt [2/2]

String us.gov.io.screen.prompt =""

◆ prompted

boolean us.gov.io.screen.prompted =false
package

Referenced by capture_input(), and print_prompt().


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