cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mtsCallableVoidBase.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3 
4 /*
5 
6  Author(s): Anton Deguet
7  Created on: 2010-09-26
8 
9  (C) Copyright 2010 Johns Hopkins University (JHU), All Rights
10  Reserved.
11 
12 --- begin cisst license - do not edit ---
13 
14 This software is provided "as is" under an open source license, with
15 no warranty. The complete license can be found in license.txt and
16 http://www.cisst.org/cisst/license.txt.
17 
18 --- end cisst license ---
19 */
20 
21 
27 #ifndef _mtsCallableVoidBase_h
28 #define _mtsCallableVoidBase_h
29 
31 
40 {
41 public:
42 
44  inline mtsCallableVoidBase(void) {}
45 
47  inline virtual ~mtsCallableVoidBase() {}
48 
51  virtual mtsExecutionResult Execute(void) = 0;
52 
54  virtual void ToStream(std::ostream & outputStream) const = 0;
55 };
56 
60 inline std::ostream & operator << (std::ostream & outputStream,
61  const mtsCallableVoidBase & callable) {
62  callable.ToStream(outputStream);
63  return outputStream;
64 }
65 
66 #endif // _mtsCallableVoidBase_h
67 
virtual mtsExecutionResult Execute(void)=0
Definition: mtsCallableVoidBase.h:39
virtual void ToStream(std::ostream &outputStream) const =0
mtsCallableVoidBase(void)
Definition: mtsCallableVoidBase.h:44
virtual ~mtsCallableVoidBase()
Definition: mtsCallableVoidBase.h:47
Definition: mtsExecutionResult.h:34
std::ostream & operator<<(std::ostream &outputStream, const mtsCallableVoidBase &callable)
Definition: mtsCallableVoidBase.h:60