Skip to content
slc.hh 1.46 KiB
Newer Older
Seblu's avatar
Seblu committed
#ifndef SLC_HH
# define SLC_HH

Seblu's avatar
Seblu committed
# define _REENTRANT

Seblu's avatar
Seblu committed
# include <cassert>
# include <ios>
# include <iostream>
# include <fstream>
# include <sstream>
Seblu's avatar
Seblu committed
# include <pthread.h>
Seblu's avatar
Seblu committed
# include <string.h>

typedef std::string string;
typedef std::stringstream sstream;
typedef std::ostream ostream;
typedef std::ifstream ifstream;
typedef std::ofstream ofstream;
Seblu's avatar
Seblu committed

enum {
  ERR_OK = 0,
  ERR_USAGE = 1,
  ERR_BADPARAM = 2,
  ERR_FILE = 3,
  ERR_NET = 4,
  ERR_PROTO = 5,
  ERR_AUTH = 6,
Seblu's avatar
Seblu committed
  ERR_SCREENSZ = 7,
Seblu's avatar
Seblu committed
  ERR_NOMEM = 41,
  ERR_UNKNOWN = 42
};

// -----------------------------------------------------------------------------
// Gonstant
// -----------------------------------------------------------------------------

static const string VERSION = "1";
static const int MAX_LINE_SIZE = 512;
static const int MAX_CONF_LINE_SIZE = 2048;
static const string RCV_DATA = "<< ";
static const string SND_DATA = ">> ";

Seblu's avatar
Seblu committed
// -----------------------------------------------------------------------------
Seblu's avatar
Seblu committed
// Global var
Seblu's avatar
Seblu committed
// -----------------------------------------------------------------------------

class Options;
class Screen;
class History;
class Connection;

extern Options O;
extern Screen S;
extern History H;
extern Connection C;
Seblu's avatar
Seblu committed
extern pthread_t g_thread_reader;

// -----------------------------------------------------------------------------
// Global func
// -----------------------------------------------------------------------------

int main(int, char **);
void *thread_reader(void *);

Seblu's avatar
Seblu committed
#endif