/*******************************************************************************
** Copyright (c) 1992-2026 MAK Technologies, Inc
** All rights reserved.
*******************************************************************************/
//! \file floatLEDatatypeRep.h
//! \ingroup omtReader
#pragma once



#include "floatDatatypeRep.h"
#ifdef DtUSE_UTILITIES_NAMESPACE
namespace DtUSE_UTILITIES_NAMESPACE
{
#endif
//! OMT Datatype of type Float - in little endian
//! \ingroup omtReader
class DT_DLL_OMTREADER DtFloatLEDatatypeRep : public DtFloatDatatypeRep
{
public:
   static int defaultFloatPrecision;
   
   //! Default Constructor
   DtFloatLEDatatypeRep(bool useImplicitPadding);
   
   //! Destructor
   virtual ~DtFloatLEDatatypeRep();
   
   //! Copy Constructor
   DtFloatLEDatatypeRep(const DtFloatLEDatatypeRep& orig);
   
   //! Assignment Operator
   DtFloatLEDatatypeRep& operator=(const DtFloatLEDatatypeRep& rhs);
   
   //! @return "float"
   virtual const char* datatype() const;
   
   //! @return the float val of this item
   virtual float floatVal(const void*) const;

   //! @return an exact copy of the byte stream
   virtual DtString stringRep(const void* ptr, int* size = 0) const;

   //! @return the number version of the byte stream
   virtual double numberRep(const void* ptr, int* size = 0) const;

   //! @return the reverse of string rep
   virtual std::vector<char> valueFromStringRep(const DtString& stringRep) const;

};


#ifdef DtUSE_UTILITIES_NAMESPACE
} // end of namespace DtUSE_UTILITIES_NAMESPACE
#endif
