contrib/brl/bmvl/brct/brct_volume_processor_params.cxx
Go to the documentation of this file.
00001 // This is brl/bmvl/brct/brct_volume_processor_params.cxx
00002 #include "brct_volume_processor_params.h"
00003 //:
00004 // \file
00005 // See brct_volume_processor_params.h
00006 //
00007 //-----------------------------------------------------------------------------
00008 #include <vcl_sstream.h>
00009 #include <vcl_iostream.h>
00010 
00011 //------------------------------------------------------------------------
00012 // Constructors
00013 //
00014 
00015 brct_volume_processor_params::
00016 brct_volume_processor_params(brct_volume_processor_params const& vp)
00017   : gevd_param_mixin()
00018 {
00019   InitParams(vp.xmin_,
00020              vp.xmax_,
00021              vp.ymin_,
00022              vp.ymax_,
00023              vp.zmin_,
00024              vp.zmax_,
00025              vp.cube_edge_length_,
00026              vp.cell_thresh_,
00027              vp.dummy2_,
00028              vp.dummy3_
00029             );
00030 }
00031 
00032 brct_volume_processor_params::
00033 brct_volume_processor_params(const float xmin,
00034                              const float xmax,
00035                              const float ymin,
00036                              const float ymax,
00037                              const float zmin,
00038                              const float zmax,
00039                              const int cube_edge_length,
00040                              const float cell_thresh,
00041                              const float dummy2,
00042                              const float dummy3)
00043 {
00044   InitParams(xmin, xmax, ymin, ymax, zmin, zmax, cube_edge_length,
00045              cell_thresh,  dummy2,  dummy3);
00046 }
00047 
00048 void brct_volume_processor_params::InitParams(float xmin,
00049                                               float xmax,
00050                                               float ymin,
00051                                               float ymax,
00052                                               float zmin,
00053                                               float zmax,
00054                                               int cube_edge_length,
00055                                               float cell_thresh,
00056                                               float dummy2,
00057                                               float dummy3)
00058 {
00059   xmin_ = xmin;
00060   xmax_ = xmax;
00061   ymin_ = ymin;
00062   ymax_ = ymax;
00063   zmin_ = zmin;
00064   zmax_ = zmax;
00065   cube_edge_length_ = cube_edge_length;
00066   cell_thresh_= cell_thresh;
00067   dummy2_= dummy2;
00068   dummy3_= dummy3;
00069 }
00070 
00071 //-----------------------------------------------------------------------------
00072 //
00073 //:   Checks that parameters are within acceptable bounds
00074 //    Note that msg << ends seems to restart the string and erase the
00075 //    previous string. We should only use it as the last call, use
00076 //    vcl_endl otherwise.
00077 bool brct_volume_processor_params::SanityCheck()
00078 {
00079   vcl_stringstream msg;
00080   bool valid = true;
00081 
00082   msg << vcl_ends;
00083 
00084   SetErrorMsg(msg.str().c_str());
00085   return valid;
00086 }
00087 
00088 vcl_ostream& operator<< (vcl_ostream& os, const brct_volume_processor_params& vp)
00089 {
00090   return
00091   os << "brct_volume_processor_params:\n[---\n"
00092      << "xmin " << vp.xmin_ << vcl_endl
00093      << "xmax " << vp.xmax_ << vcl_endl
00094      << "ymin " << vp.ymin_ << vcl_endl
00095      << "ymax " << vp.ymax_ << vcl_endl
00096      << "zmin " << vp.zmin_ << vcl_endl
00097      << "zmax " << vp.zmax_ << vcl_endl
00098      << "cube_edge_length " << vp.cube_edge_length_ << vcl_endl
00099      << "cell thresh " << vp.cell_thresh_ << vcl_endl
00100      << "---]" << vcl_endl;
00101 }