1 /* $Header: /var/cvs/mbdyn/mbdyn/mbdyn-1.0/libraries/libmbutil/dummypgin.cc,v 1.25 2017/01/12 14:44:04 masarati Exp $ */
2 /*
3  * MBDyn (C) is a multibody analysis code.
4  * http://www.mbdyn.org
5  *
6  * Copyright (C) 1996-2017
7  *
8  * Pierangelo Masarati	<masarati@aero.polimi.it>
9  * Paolo Mantegazza	<mantegazza@aero.polimi.it>
10  *
11  * Dipartimento di Ingegneria Aerospaziale - Politecnico di Milano
12  * via La Masa, 34 - 20156 Milano, Italy
13  * http://www.aero.polimi.it
14  *
15  * Changing this copyright notice is forbidden.
16  *
17  * This program is free software; you can redistribute it and/or modify
18  * it under the terms of the GNU General Public License as published by
19  * the Free Software Foundation (version 2 of the License).
20  *
21  *
22  * This program is distributed in the hope that it will be useful,
23  * but WITHOUT ANY WARRANTY; without even the implied warranty of
24  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
25  * GNU General Public License for more details.
26  *
27  * You should have received a copy of the GNU General Public License
28  * along with this program; if not, write to the Free Software
29  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
30  */
31 
32 #include "mbconfig.h"           /* This goes first in every *.c,*.cc file */
33 
34 #include "dummypgin.h"
35 
DummyPlugIn(MathParser & mp,void * arg)36 DummyPlugIn::DummyPlugIn(MathParser& mp, void *arg)
37 : MathParser::PlugIn(mp)
38 {
39 	ASSERT(arg != NULL);
40 	throw MathParser::ErrGeneric(&mp, MBDYN_EXCEPT_ARGS,
41 		std::string("error: '") + static_cast<const char *>(arg) + "'");
42 }
43 
~DummyPlugIn(void)44 DummyPlugIn::~DummyPlugIn(void)
45 {
46 }
47 
48 const char *
sName(void) const49 DummyPlugIn::sName(void) const
50 {
51 	return NULL;
52 }
53 
54 int
Read(int,char * [])55 DummyPlugIn::Read(int /* argc */ , char * /* argv */ [])
56 {
57 	return 0;
58 }
59 
60 TypedValue::Type
GetType(void) const61 DummyPlugIn::GetType(void) const
62 {
63 	return TypedValue::VAR_UNKNOWN;
64 }
65 
66 TypedValue
GetVal(void) const67 DummyPlugIn::GetVal(void) const
68 {
69 	return TypedValue(0);
70 }
71 
72 MathParser::PlugIn *
dummy_plugin(MathParser & mp,void * arg)73 dummy_plugin(MathParser& mp, void *arg)
74 {
75 	MathParser::PlugIn *p = NULL;
76 
77 	SAFENEWWITHCONSTRUCTOR(p, DummyPlugIn, DummyPlugIn(mp, arg));
78 
79 	return p;
80 }
81 
82