/*
   b_ptr_float.h   Generated by the Ballista(tm) Project data object compiler
   Copyright (C) 1998-2001  Carnegie Mellon University

   This program is free software; you can redistribute it and/or
   modify it under the terms of the GNU General Public License
   as published by the Free Software Foundation; either version 2
   of the License, or (at your option) any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

   File generated Wednesday, May 23 at 02:49 AM EDT

TITLE
   b_ptr_float.h
*/

//include control
#ifndef B_PTR_FLOAT_H
#define B_PTR_FLOAT_H
#include <errno.h>
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <stream.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include "bTypes.h"

#include "b_ptr_void.h"
#include "math.h"
#define CLASSTYPE float*
#define CLASSNAME b_ptr_float
#define CLASS_STRING "b_ptr_float"
#define CLASSPARENT b_ptr_void
#define NUMBER_OF_DIALS 1


class CLASSNAME:public CLASSPARENT
{
private:
  //CLASS DIAL SETTING STRING VARIABLES
  b_param _b_ptr_floatTYPENAME;
b_param _b_ptr_floatFMINEXP;
int b_ptr_float_fminexp;
b_param _b_ptr_floatLN2;
int b_ptr_float_ln2;
b_param _b_ptr_floatPI;
int b_ptr_float_pi;
b_param _b_ptr_floatHALF_PI;
int b_ptr_float_half_pi;
b_param _b_ptr_floatTWO_PI;
int b_ptr_float_two_pi;
b_param _b_ptr_floatSQRT2;
int b_ptr_float_sqrt2;
b_param _b_ptr_floatE;
int b_ptr_float_e;
b_param _b_ptr_floatMAXFLOAT;
int b_ptr_float_maxfloat;
b_param _b_ptr_floatMINFLOAT;
int b_ptr_float_minfloat;
b_param _b_ptr_floatNEGMAXFLOAT;
int b_ptr_float_negmaxfloat;
b_param _b_ptr_floatNEGMINFLOAT;
int b_ptr_float_negminfloat;
b_param _b_ptr_floatZERO;
int b_ptr_float_zero;
b_param _b_ptr_floatNEGONE;
int b_ptr_float_negone;
b_param _b_ptr_floatONE;
int b_ptr_float_one;
  //TYPE VARIABLE TO SAVE VALUE FOR DESTRUCTION
  CLASSTYPE _theVariable;

 public:
  //CLASS DIAL SETTING STRING ACCESS METHODS
b_param *b_ptr_floatFMINEXP();
b_param *b_ptr_floatLN2();
b_param *b_ptr_floatPI();
b_param *b_ptr_floatHALF_PI();
b_param *b_ptr_floatTWO_PI();
b_param *b_ptr_floatSQRT2();
b_param *b_ptr_floatE();
b_param *b_ptr_floatMAXFLOAT();
b_param *b_ptr_floatMINFLOAT();
b_param *b_ptr_floatNEGMAXFLOAT();
b_param *b_ptr_floatNEGMINFLOAT();
b_param *b_ptr_floatZERO();
b_param *b_ptr_floatNEGONE();
b_param *b_ptr_floatONE();
  //CLASS CONSTRUCTOR
  CLASSNAME();

public:
  //Mandatory Methods
  b_param *typeName();           //returns the type of parameter
  virtual void *access(b_param data[]);
  virtual int commit(b_param tname);
  virtual int cleanup(b_param tname);
  
  virtual int numDials(b_param tname);
  virtual int numItems(b_param tname,int dialNumber);
  virtual b_param *paramName(b_param tname,int dialNumber, int position);

  virtual int distanceFromBase();
  virtual void typeList(b_param list[],int num);
  
};



#endif      //CLASSNAME_H
