Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r61742 - in sandbox/itl: boost/validate/driver libs/validate/doc/boostcon2010
From: afojgo_at_[hidden]
Date: 2010-05-03 06:39:45


Author: jofaber
Date: 2010-05-03 06:39:44 EDT (Mon, 03 May 2010)
New Revision: 61742
URL: http://svn.boost.org/trac/boost/changeset/61742

Log:
Modified presentation Boost.Alabaster. Added example driver.
Added:
   sandbox/itl/boost/validate/driver/abelian_monoid_driver.hpp (contents, props changed)
Binary files modified:
   sandbox/itl/libs/validate/doc/boostcon2010/BoostAlabaster.pptx

Added: sandbox/itl/boost/validate/driver/abelian_monoid_driver.hpp
==============================================================================
--- (empty file)
+++ sandbox/itl/boost/validate/driver/abelian_monoid_driver.hpp 2010-05-03 06:39:44 EDT (Mon, 03 May 2010)
@@ -0,0 +1,95 @@
+/*-----------------------------------------------------------------------------+
+A Law Based Test Automaton 'LaBatea'
+Author: Joachim Faulhaber
+Copyright (c) 2007-2010: Joachim Faulhaber
++------------------------------------------------------------------------------+
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENCE.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
++-----------------------------------------------------------------------------*/
+#ifndef BOOST_VALIDATE_DRIVER_ABELIAN_MONOID_DRIVER_HPP_JOFA_100502
+#define BOOST_VALIDATE_DRIVER_ABELIAN_MONOID_DRIVER_HPP_JOFA_100502
+
+#include <iostream>
+#include <stdio.h>
+#include <boost/validate/validater/abelian_monoid_validater.hpp>
+#include <boost/validate/driver/itl_driver.hpp>
+#include <boost/validate/utility.hpp>
+
+namespace boost{namespace itl
+{
+ class abelian_monoid_driver : public itl_driver
+ {
+ public:
+ abelian_monoid_driver() { setProfile(); }
+
+ void setProfile()
+ {
+ setValid(true);
+ _rootChoice.setSize(RootType::Types_size);
+ _rootChoice.setMaxWeights(100);
+ _rootChoice[RootType::itl_set] = 33;
+ _rootChoice[RootType::interval_set] = 33;
+ _rootChoice[RootType::split_interval_set] = 34;
+ setRootTypeNames();
+ _rootChoice.init();
+
+ _domainChoice.setSize(DomainType::DomainTypes_size);
+ _domainChoice.setMaxWeights(100);
+ _domainChoice[DomainType::Int] = 50;
+ _domainChoice[DomainType::Double] = 50;
+ setDomainTypeNames();
+ _domainChoice.init();
+
+ if(!_rootChoice.is_consistent())
+ {
+ setValid(false);
+ std::cout << _rootChoice.inconsitencyMessage("abelian_monoid_driver::setProfile()") << std::endl;
+ }
+
+ if(!_domainChoice.is_consistent())
+ {
+ setValid(false);
+ std::cout << _domainChoice.inconsitencyMessage("abelian_monoid_driver::setProfile()") << std::endl;
+ }
+ }
+
+ concept_validater* chooseValidater()
+ {
+ int rootChoice = _rootChoice.some();
+ int domainChoice = _domainChoice.some();
+
+ switch(rootChoice)
+ {
+ case RootType::itl_set: {
+ switch(domainChoice) {
+ case DomainType::Int: return new abelian_monoid_validater<itl::set<int> >;
+ case DomainType::Double: return new abelian_monoid_validater<itl::set<double> >;
+ default: return choiceError(ITL_LOCATION("\nRootType::itl_set: domainChoice:\n"),
+ domainChoice, _domainChoice);
+ }
+ }
+ case RootType::interval_set: {
+ switch(domainChoice) {
+ case DomainType::Int: return new abelian_monoid_validater<interval_set<int> >;
+ case DomainType::Double: return new abelian_monoid_validater<interval_set<double> >;
+ default: return choiceError(ITL_LOCATION("\nRootType::interval_set: domainChoice:\n"),
+ domainChoice, _domainChoice);
+ }
+ }
+ case RootType::split_interval_set: {
+ switch(domainChoice) {
+ case DomainType::Int: return new abelian_monoid_validater<split_interval_set<int> >;
+ case DomainType::Double: return new abelian_monoid_validater<split_interval_set<double> >;
+ default: return choiceError(ITL_LOCATION("\nRootType::split_interval_set: domainChoice:\n"),
+ domainChoice, _domainChoice);
+ }
+ }
+ default: return choiceError(ITL_LOCATION("rootChoice:\n"), rootChoice, _rootChoice);
+ } //switch()
+ }
+ };
+
+}} // namespace itl boost
+
+#endif // BOOST_VALIDATE_DRIVER_ABELIAN_MONOID_DRIVER_HPP_JOFA_100502

Modified: sandbox/itl/libs/validate/doc/boostcon2010/BoostAlabaster.pptx
==============================================================================
Binary files. No diff available.


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk