1 
2 // -*- mode: c++; c-basic-offset:4 -*-
3 
4 // This file is part of libdap, A C++ implementation of the OPeNDAP Data
5 // Access Protocol.
6 
7 // Copyright (c) 2013 OPeNDAP, Inc.
8 // Authors: Nathan Potter <npotter@opendap.org>
9 //		James Gallagher <jgallagher@opendap.org>
10 //
11 // This library is free software; you can redistribute it and/or
12 // modify it under the terms of the GNU Lesser General Public
13 // License as published by the Free Software Foundation; either
14 // version 2.1 of the License, or (at your option) any later version.
15 //
16 // This library is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19 // Lesser General Public License for more details.
20 //
21 // You should have received a copy of the GNU Lesser General Public
22 // License along with this library; if not, write to the Free Software
23 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
24 //
25 // You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
26 
27 #include <ServerFunction.h>
28 
29 namespace libdap {
30 
31 class BaseType;
32 class DDS;
33 class DMR;
34 class D4RValueList;
35 
36 /**
37  * The scale() function scales data.
38  */
39 void function_scale_dap2(int argc, BaseType *argv[], DDS &dds, BaseType **btpp);
40 BaseType *function_scale_dap4(D4RValueList *args, DMR &dmr);
41 
42 /**
43  * The LinearScaleFunction class encapsulates the linear_scale function 'function_linear_scale'
44  * along with additional meta-data regarding its use and applicability.
45  */
46 class D4TestFunction: public ServerFunction {
47 public:
D4TestFunction()48 	D4TestFunction()
49     {
50 		setName("scale");
51 		setDescriptionString("The scale() function is for testing.");
52 		setUsageString("scale(var, num): scale var by num. var can be a scalar or an array");
53 		setRole("http://services.opendap.org/dap4/server-side-function/scale");
54 		setDocUrl("http://docs.opendap.org/index.php/Server_Side_Processing_Functions");
55 		setFunction(function_scale_dap2);
56 		setVersion("1.0");
57 
58 		setFunction(function_scale_dap4);
59     }
~D4TestFunction()60     virtual ~D4TestFunction()
61     {
62     }
63 };
64 
65 } // libdap namespace
66