#pragma once
#include "TechObject.h"

class CurrentWorld;
class TechMonitoringProcess;

/**
 * @brief A tech (in BWAPI terms) is an optional ability that can be researched in the appropriate building.
 *        A tech is said to be acquired when it actually finishes researching.
 * @note You're welcome to change this hideous class name!
 */
class TechTypeObject : public TechObject
{
public:
  TechTypeObject(BWAPI::TechType techType);
  BWAPI::TechType getTech() const { return m_techType; }
protected:
  friend class CurrentWorld;
  friend class TechMonitoringProcess;
  const BWAPI::TechType m_techType;
};
