1 #ifndef __JLANG__JEQUATIONFACET__
2 #define __JLANG__JEQUATIONFACET__
21 namespace JPP {
using namespace JLANG; }
69 return new JEquationFacet(static_cast<const JEquationParameters&>(*
this));
85 const std::ios_base& format,
86 std::ios_base::iostate&
result,
103 const std::ios_base& format,
105 const char buffer)
const
107 return do_put(out, format, c, buffer);
133 std::istream&
pop(std::istream&
in)
const
136 for (
int c; (
c = in.peek()) != EOF &&
isWhiteSpace((
char)
c); ) { in.get(); }
138 catch(
const std::exception& error) {};
156 const std::ios_base& format,
157 std::ios_base::iostate&
result,
162 result = (ios_base::iostate) 0;
164 streamsize
n = format.width();
167 n = numeric_limits<streamsize>::max();
178 result |= ios_base::failbit;
179 result |= ios_base::eofbit;
185 result |= ios_base::failbit;
190 buffer.push_back(*
i);
196 buffer.push_back(*
i);
199 result |= ios_base::eofbit;
219 const std::ios_base& format,
220 std::ios_base::iostate&
result,
225 result = (ios_base::iostate) 0;
235 result |= ios_base::failbit;
236 result |= ios_base::eofbit;
240 result |= ios_base::failbit;
261 const std::ios_base& format,
267 if (format.flags() & ios_base::right) {
268 for (streamsize
i = buffer.size();
i < format.width(); ++
i, ++out) {
273 for (string::const_iterator
i = buffer.begin();
i != buffer.end(); ++
i, ++out) {
277 if (format.flags() & ios_base::left) {
278 for (streamsize
i = buffer.size();
i < format.width(); ++
i, ++out) {
297 const std::ios_base& format,
299 const char buffer)
const
303 if (format.flags() & ios_base::right) {
304 for (streamsize
i = 1;
i < format.width(); ++
i, ++out) {
312 if (format.flags() & ios_base::left) {
313 for (streamsize
i = 1;
i < format.width(); ++
i, ++out) {
360 std::ios_base::iostate&
result,
365 result = (ios_base::iostate) 0;
375 result |= ios_base::failbit;
376 result |= ios_base::eofbit;
386 for (
int count = 0;
i != __end && (count != 0 || !
isEndOfLine(*
i)); ++
i) {
388 buffer.push_back(*
i);
404 string::size_type pos = buffer.find(
getComment());
406 if (pos != string::npos) {
459 if (has_facet<JEquationFacet>(out.getloc()))
491 in.imbue(locale(in.getloc(), facet.
clone()));
508 out.imbue(locale(out.getloc(), facet.
clone()));
523 using namespace JLANG;
525 if (has_facet<JEquationFacet>(out.getloc()))
543 using namespace JLANG;
545 if (has_facet<JEquationFacet>(out.getloc()))
563 using namespace JLANG;
565 if (has_facet<JEquationFacet>(out.getloc()))
589 using namespace JLANG;
591 if (has_facet<JEquationFacet>(out.getloc()))
609 using namespace JLANG;
611 if (has_facet<JEquationFacet>(out.getloc()))
virtual ostreambuf_iterator do_put(ostreambuf_iterator out, const std::ios_base &format, const char c, const std::string &buffer) const override
Put string.
virtual istreambuf_iterator do_getline(const istreambuf_iterator __begin, const istreambuf_iterator __end, std::ios_base::iostate &result, std::string &buffer) const override
Read string.
Facet class to specify parsing of equations in currect locale (see class JLANG::JEquation).
const char getDefaultSeparator() const
Get default separator character.
const JEndOfLine & operator()(const unsigned int i) const
Constructor.
std::ostream & right_bracket(std::ostream &out)
Print right bracket.
bool isRightBracket(const char c) const
Test for right bracket character.
std::istreambuf_iterator< char, std::char_traits< char > > istreambuf_iterator
std::ostreambuf_iterator< char, std::char_traits< char > > ostreambuf_iterator
std::ostream & division(std::ostream &out)
Print division.
const std::string getPrefix(const std::string &prefix, const std::string &name) const
Get combined prefix for output.
then echo Enter input within $TIMEOUT_S seconds echo n User name
std::ostream & white_space(std::ostream &out)
Print white space.
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Simple data structure to support I/O of equations (see class JLANG::JEquation).
ostreambuf_iterator put(ostreambuf_iterator out, const std::ios_base &format, const char c, const char buffer) const
Put character.
const char getDefaultWhiteSpace() const
Get default white space character.
const char getPreferredEndOfLine(const unsigned int index) const
Get preferred end of line character.
bool isEndOfLine(const char c) const
Test for end of line character.
JEquationFacet(const JEquationParameters ¶meters)
Constructor.
std::ostream & left_bracket(std::ostream &out)
Print left bracket.
char getRightBracket() const
Get right bracket.
virtual ostreambuf_iterator do_put(ostreambuf_iterator out, const std::ios_base &format, const char c, const char buffer) const
Put character.
virtual istreambuf_iterator do_get(const istreambuf_iterator __begin, const istreambuf_iterator __end, const std::ios_base &format, std::ios_base::iostate &result, char &buffer) const
Get character.
std::ostream & separator(std::ostream &out)
Print separator.
std::istream & pop(std::istream &in) const
Pop white spaces.
friend std::ostream & operator<<(std::ostream &out, const JEndOfLine &eol)
Print end of line.
char getLeftBracket() const
Get left bracket.
JEndOfLine()
Default constructor.
const char getDefaultDivision() const
Get default division character.
const std::string & getComment() const
Get comment string.
Auxiliary class for end of line.
bool isWhiteSpace(const char c) const
Test for white space character.
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
std::istream & operator>>(std::istream &in, JAANET::JHead &header)
Read header from input.
JEquationFacet()
Default constructor.
JLANG::JEquationFacet setequation
Type definition of stream manipulator for equational I/O.
ostreambuf_iterator put(ostreambuf_iterator out, const std::ios_base &format, const char c, const std::string &buffer) const
Put string.
istreambuf_iterator get(const istreambuf_iterator __begin, const istreambuf_iterator __end, const std::ios_base &format, std::ios_base::iostate &result, std::string &buffer) const
Get string.
Facet class to specify parsing of a JLANG::JString object.
bool isSeparator(const char c) const
Test for separator character.
static const JLANG::JEndOfLine end_of_line
Print end of line.
bool isDivision(const char c) const
Test for division character.
void operator=(const JEquationFacet &)
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
virtual JEquationFacet * clone() const override
Clone this facet.
virtual istreambuf_iterator do_get(const istreambuf_iterator __begin, const istreambuf_iterator __end, const std::ios_base &format, std::ios_base::iostate &result, std::string &buffer) const override
Get string.
bool isLeftBracket(const char c) const
Test for left bracket character.