37       switch (
data.size()) {
 
   40         return  apply(hydrophone, action, 
data[0]);                                        
 
   58     friend inline std::istream& 
operator>>(std::istream& 
in, JModifier& modifier)
 
   62       if (in >> modifier.id >> modifier.action) {
 
   64         modifier.data.clear();
 
   66         for (
double x; in >> 
x; ) {
 
   67           modifier.data.push_back(x);
 
   70         in.clear(ios_base::eofbit);
 
   84     friend inline std::ostream& 
operator<<(std::ostream& out, 
const JModifier& modifier)
 
   88       out << modifier.action;
 
  135       else if (action == add_t)
 
  137       else if (action == sub_t)
 
  171 int main(
int argc, 
char **argv)
 
  188     JParser<> zap(
"Auxiliary program to modify hydrophone configuration.");
 
  190     zap[
'f'] = 
make_field(inputFile,   
"hydrophone input file");
 
  195     zap[
'q'] = 
make_field(squash,      
"squash meta data");
 
  200   catch(
const exception &error) {
 
  201     FATAL(error.what() << endl);
 
  207     data.load(inputFile.c_str());
 
  209   catch(
const exception&) {}
 
  212     data.comment.clear();
 
  215   data.comment.add(
JMeta(argc, argv));
 
  223     for (container_type::iterator 
target = data.begin(); 
target != data.end(); ++
target) {
 
  225       if (
target->getString() == 
i->id) {
 
  227         DEBUG(
"Modifier"                                                                                                << 
' ' 
  229               << 
"action" << 
' ' << 
i->action << 
JEEPZ() << 
i->data << endl);
 
  232           ERROR(
"No valid action: " << *
i << endl);
 
  239     for (container_type::iterator 
target = data.begin(); 
target != data.end(); ) {
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
 
Type definition of hydrophone. 
 
Data structure for hydrophone. 
 
JVector3D & sub(const JVector3D &vector)
Subtract vector. 
 
I/O formatting auxiliaries. 
 
Data structure for vector in three dimensions. 
 
Auxiliary wrapper for I/O of container with optional comment (see JComment). 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
Auxiliary data structure for streaming of STL containers. 
 
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. 
 
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
 
JPosition3D & rotate(const JRotation3D &R)
Rotate. 
 
JVector3D & add(const JVector3D &vector)
Add vector. 
 
void setPosition(const JVector3D &pos)
Set position. 
 
#define DEBUG(A)
Message macros.