Exceptions.cpp
上传用户:lijia5631
上传日期:2008-11-10
资源大小:1214k
文件大小:3k
源码类别:

视频捕捉/采集

开发平台:

MultiPlatform

  1. /**
  2.   * cubicles
  3.   *
  4.   * This is an implementation of the Viola-Jones object detection 
  5.   * method and some extensions.  The code is mostly platform-
  6.   * independent and uses only standard C and C++ libraries.  It
  7.   * can make use of MPI for parallel training and a few Windows
  8.   * MFC functions for classifier display.
  9.   *
  10.   * Mathias Kolsch, matz@cs.ucsb.edu
  11.   *
  12.   * $Id: Exceptions.cpp,v 1.13 2004/11/11 01:58:58 matz Exp $
  13. **/
  14. // Exceptions.cpp : implementation file for all C++ exceptions
  15. // that can occur during cubicle use.
  16. //
  17. ////////////////////////////////////////////////////////////////////
  18. //
  19. // By downloading, copying, installing or using the software you 
  20. // agree to this license.  If you do not agree to this license, 
  21. // do not download, install, copy or use the software.
  22. //
  23. // Copyright (C) 2004, Mathias Kolsch, all rights reserved.
  24. // Third party copyrights are property of their respective owners.
  25. //
  26. // Redistribution and use in binary form, with or without 
  27. // modification, is permitted for non-commercial purposes only.
  28. // Redistribution in source, with or without modification, is 
  29. // prohibited without prior written permission.
  30. // If granted in writing in another document, personal use and 
  31. // modification are permitted provided that the following two
  32. // conditions are met:
  33. //
  34. // 1.Any modification of source code must retain the above 
  35. //   copyright notice, this list of conditions and the following 
  36. //   disclaimer.
  37. //
  38. // 2.Redistribution's in binary form must reproduce the above 
  39. //   copyright notice, this list of conditions and the following 
  40. //   disclaimer in the documentation and/or other materials provided
  41. //   with the distribution.
  42. //
  43. // This software is provided by the copyright holders and 
  44. // contributors "as is" and any express or implied warranties, 
  45. // including, but not limited to, the implied warranties of 
  46. // merchantability and fitness for a particular purpose are 
  47. // disclaimed.  In no event shall the copyright holder or 
  48. // contributors be liable for any direct, indirect, incidental, 
  49. // special, exemplary, or consequential damages (including, but not 
  50. // limited to, procurement of substitute goods or services; loss of 
  51. // use, data, or profits; or business interruption) however caused
  52. // and on any theory of liability, whether in contract, strict 
  53. // liability, or tort (including negligence or otherwise) arising 
  54. // in any way out of the use of this software, even if advised of 
  55. // the possibility of such damage.
  56. //
  57. ////////////////////////////////////////////////////////////////////
  58. #include "cubicles.hpp"
  59. #include "Exceptions.h"
  60. #include <ostream>
  61. ITException::ITException(string msg)
  62. {
  63.   m_msg = msg;
  64. }
  65. ostream& ITException::output(ostream& os) const
  66. {
  67.   return os << "ITException: " << m_msg;
  68. }
  69. ostream& operator<<(ostream& os, const ITException& ite) {
  70.   return ite.output(os);
  71. }
  72. ITETraining::ITETraining(string msg)
  73.   : ITException(msg)
  74. {
  75. }
  76. ITETrainedPerfectWeak::ITETrainedPerfectWeak()
  77.   : ITETraining("perfect weak classifier")
  78. {
  79. }
  80. ITETrainBadSeparation::ITETrainBadSeparation()
  81.   : ITETraining("weak classifier separates training set poorly or not at all")
  82. {
  83. }
  84. ITETrainingNoMoreNegs::ITETrainingNoMoreNegs()
  85.   : ITETraining("can not find enough negative examples to reach the desired false positive rate")
  86. {
  87. }
  88. ITEFile::ITEFile(string filename, string msg)
  89.   : ITException("error with file "+filename+":n"+msg),
  90.     m_filename(filename)
  91. {
  92. }
  93. ITEFileNotFound::ITEFileNotFound(string filename)
  94.   : ITEFile(filename, "could not find or open file")
  95. {
  96. }