//----------------------------------------------------------------------------
///
///
///
//----------------------------------------------------------------------------


#include <fosh/command.h>
//#include <stdlib.h>
#include <biwak/retain.h>


class CCommandHwData: public CCommand
{
      CRetain *m_pRetain;
   public:
      CCommandHwData(const char *_name, CRetain *retain)
         :CCommand( _name, "   hwdata: show stored hardware data\n" )
         ,m_pRetain(retain)
      {}
      virtual int exec(int argc, const char *argv[]) const;
      virtual void printHelp() const;
      virtual void dump(void *) const = 0;
};

class CCommandHwDataV4: public CCommandHwData
{
   public:
      CCommandHwDataV4(const char *_name, CRetain *retain)
         :CCommandHwData( _name, retain )
      {}
      virtual void dump(void *) const override;
};

class CCommandHwDataV5: public CCommandHwData
{
   public:
      CCommandHwDataV5(const char *_name, CRetain *retain)
         :CCommandHwData( _name, retain )
      {}
      virtual void dump(void *) const override;
};


//---fin----------------------------------------------------------------------
