23 static const int WILDCARD = -1;
52 bool apply(
JTripod& tripod)
const
56 else if (action == addx_t)
58 else if (action == subx_t)
60 else if (action == sety_t)
62 else if (action == addy_t)
64 else if (action == suby_t)
66 else if (action == setz_t)
68 else if (action == addz_t)
70 else if (action == subz_t)
86 friend inline std::istream&
operator>>(std::istream&
in, JModifier& modifier)
88 return in >> modifier.id >> modifier.action >> modifier.value;
99 friend inline std::ostream&
operator<<(std::ostream& out,
const JModifier& modifier)
101 return out << modifier.id <<
' ' << modifier.action <<
' ' << modifier.value;
125 int main(
int argc,
char **argv)
137 JParser<> zap(
"Auxiliary program to modify tripod configuration.");
139 zap[
'f'] =
make_field(tripodFile,
"tripod file I/O");
141 zap[
'N'] =
make_field(size,
"internal buffer size") = 500000;
146 catch(
const exception &error) {
147 FATAL(error.what() << endl);
153 io.open(tripodFile.c_str(),
ios_base::in | ios_base::out);
156 FATAL(
"Error opening file " << tripodFile << endl);
166 for (
JTripod tripod; io >> tripod; ) {
172 cout << comment << endl;
174 for (container_type::const_iterator i =
tripods.begin(); i !=
tripods.end(); ++i) {
183 if (
target->getID() == i->id || i->id == WILDCARD) {
185 DEBUG(
"Modifier" <<
' '
187 << i->action <<
' ' << i->value << endl);
190 ERROR(
"No valid action: " << *i << endl);
199 io.open(tripodFile.c_str(), ios_base::trunc | ios_base::out);
201 for (container_type::const_iterator i =
tripods.begin(); i !=
tripods.end(); ++i) {
Utility class to parse command line options.
int main(int argc, char *argv[])
JUTMPosition & sub(const JUTMPosition &pos)
Subtract UTM position.
double getUTMEast() const
Get UTM east.
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.
double getUTMZ() const
Get UTM Z.
I/O formatting auxiliaries.
double getUTMNorth() const
Get UTM north.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
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 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
#define DEBUG(A)
Message macros.