// __author__ = Juan Carlos De Abreu (jcabreur@gmail.com)

#ifndef DATA_CAMERA_H__
#define DATA_CAMERA_H__

#include "Data.h"

BEGIN_TEG_NAMESPACE();

class Camera;

class DataCamera : public IData {
protected:
  // Attributes.
  SmartPointer<Camera> value;

public:
  // DataCamera constructor.
  DataCamera(const SmartPointer<Camera>& value_);

  // DataCamera destructor
  ~DataCamera();

  // Methods.
  void print();
  
  SmartPointer<IData> getMethod(
      SmartPointer<IData> elem,
      std::map<std::string, SmartPointer<IData>>& variables);

  SmartPointer<IData> resolve(
      std::map<std::string, SmartPointer<IData>>& variables) { return NULL; }
  AUTO_SIZE();
};

END_TEG_NAMESPACE();

#endif  // DATA_CAMERA_H__
