<?php
declare(strict_types=1);

namespace App\Entity\Core;

//use DH\Auditor\Provider\Doctrine\Auditing\Annotation\Auditable;
use Doctrine\ORM\Mapping as ORM;

/**
 * Classe ... qui ...
 */
//#[Auditable]
#[ORM\Entity]
class Categories
{
    #[ORM\Id]
    #[ORM\Column]
    #[ORM\GeneratedValue]
    private ?int $id = null;

    #[ORM\ManyToOne]
    #[ORM\JoinColumn(nullable: false)]
    private Familly $familly;

    #[ORM\ManyToOne]
    #[ORM\JoinColumn(nullable: false)]
    private Subfamilly $subfamilly;

    #[ORM\ManyToOne]
    #[ORM\JoinColumn(nullable: false)]
    private Gender $gender;

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getFamilly(): ?Familly
    {
        return $this->familly;
    }

    public function setFamilly(?Familly $familly): self
    {
        $this->familly = $familly;

        return $this;
    }

    public function getSubfamilly(): ?Subfamilly
    {
        return $this->subfamilly;
    }

    public function setSubfamilly(?Subfamilly $subfamilly): self
    {
        $this->subfamilly = $subfamilly;

        return $this;
    }

    public function getGender(): ?Gender
    {
        return $this->gender;
    }

    public function setGender(?Gender $gender): self
    {
        $this->gender = $gender;

        return $this;
    }
}