c++/parameter-lister/info/globalcode/parameterLister/OutputModule.h
author František Kučera <franta-hg@frantovo.cz>
Tue, 05 May 2015 22:46:40 +0200
changeset 20 0684883953ba
parent 16 65f51abd5fb8
child 28 bfef9f34e438
permissions -rw-r--r--
TODO: escapeValue()
franta-hg@7
     1
#ifndef OUTPUTMODULE_H
franta-hg@7
     2
#define	OUTPUTMODULE_H
franta-hg@7
     3
franta-hg@9
     4
#include <iostream>
franta-hg@11
     5
#include <vector>
franta-hg@9
     6
franta-hg@8
     7
namespace info {
franta-hg@8
     8
namespace globalcode {
franta-hg@8
     9
namespace parameterLister {
franta-hg@8
    10
franta-hg@20
    11
using namespace std;
franta-hg@20
    12
franta-hg@7
    13
class OutputModule {
franta-hg@7
    14
public:
franta-hg@16
    15
	/**
franta-hg@16
    16
	 * 
franta-hg@20
    17
	 * @param output
franta-hg@20
    18
	 * @param command
franta-hg@20
    19
	 * @param args
franta-hg@20
    20
	 * @return exit code
franta-hg@20
    21
	 */
franta-hg@20
    22
	virtual int process(ostream &output, string &command, vector<string> &args);
franta-hg@20
    23
franta-hg@20
    24
protected:
franta-hg@20
    25
	/**
franta-hg@20
    26
	 * TODO: escape line ends, tabs, esc + deal with unicode/encoding + colorize
franta-hg@20
    27
	 * @param value
franta-hg@20
    28
	 * @param colorize
franta-hg@20
    29
	 * @return 
franta-hg@20
    30
	 */
franta-hg@20
    31
	virtual string escapeValue(string value, bool colorize);
franta-hg@20
    32
franta-hg@7
    33
private:
franta-hg@7
    34
franta-hg@7
    35
};
franta-hg@7
    36
franta-hg@8
    37
}
franta-hg@8
    38
}
franta-hg@8
    39
}
franta-hg@8
    40
franta-hg@7
    41
#endif	/* OUTPUTMODULE_H */
franta-hg@7
    42