LibreCAD
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
addentityevent.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "cad/const.h"
4 #include "cad/base/cadentity.h"
5 
6 namespace lc {
12  public:
18  AddEntityEvent(entity::CADEntity_CSPtr cadEntity) : _cadEntity(cadEntity) {
19  }
24  const entity::CADEntity_CSPtr entity() const {
25  return _cadEntity;
26  }
27 
32  template <typename T>
33  const std::shared_ptr<const T> entity() const {
34  return std::dynamic_pointer_cast<const T>(_cadEntity);
35  }
36 
37  private:
38  const entity::CADEntity_CSPtr _cadEntity;
39  };
40 }
const entity::CADEntity_CSPtr _cadEntity
Definition: cadentity.h:12
AddEntityEvent(entity::CADEntity_CSPtr cadEntity)
Construct an Add Entity Event.
const std::shared_ptr< const T > entity() const
Returns the entity.
const entity::CADEntity_CSPtr entity() const
Returns the entity without cast.