19 static const std::string set_t =
"set";
20 static const std::string add_t =
"add";
21 static const std::string sub_t =
"sub";
41 bool apply(
JTripod& tripod)
const
45 else if (action == add_t)
47 else if (action == sub_t)
63 friend inline std::istream&
operator>>(std::istream&
in, JModifier& modifier)
65 return in >> modifier.id >> modifier.action >> modifier.pos;
76 friend inline std::ostream&
operator<<(std::ostream& out,
const JModifier& modifier)
80 out << modifier.action;
106 int main(
int argc,
char **argv)
119 JParser<> zap(
"Auxiliary program to modify tripod configuration.");
121 zap[
'f'] =
make_field(tripodFile,
"tripod file");
127 catch(
const exception &error) {
128 FATAL(error.what() << endl);
131 tripods_container tripods;
133 tripods.load(tripodFile.c_str());
135 tripods.comment.add(
JMeta(argc, argv));
139 for (tripods_container::iterator tripod = tripods.begin(); tripod != tripods.end(); ++tripod) {
141 if (tripod->
getID() == i->id) {
143 DEBUG(
"Modifier" <<
' '
144 <<
"(" <<
FILL(2,
'0') << tripod->
getID() <<
FILL() <<
")" <<
' '
145 <<
"action" <<
' ' << i->pos << endl);
147 if (!i->apply(*tripod)) {
148 ERROR(
"No valid action: " << *i << endl);
154 tripods.store(tripodFile.c_str());
Utility class to parse command line options.
JUTMPosition & sub(const JUTMPosition &pos)
Subtract UTM position.
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
void setUTMPosition(const JUTMPosition &position)
Set UTM position.
Data structure for UTM position.
I/O formatting auxiliaries.
Auxiliary wrapper for I/O of container with optional comment (see JComment).
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
int getID() const
Get identifier.
General purpose messaging.
Auxiliary data structure for sequence of same character.
std::istream & operator>>(std::istream &in, JAANET::JHead &header)
Read header from input.
Utility class to parse command line options.
Data structure for tripod.
JUTMPosition & add(const JUTMPosition &pos)
Add UTM position.
Data structure for tripod.
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 source JAcoustics sh $DETECTOR_ID typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
#define DEBUG(A)
Message macros.
int main(int argc, char *argv[])