// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "../Global.h"

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class GeneticsComponent {

#define AFTER_EXTRA

#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_GENETICSCOMPONENT
public:
    class GeneticsComponent& operator=(class GeneticsComponent const &) = delete;
    GeneticsComponent(class GeneticsComponent const &) = delete;
    GeneticsComponent() = delete;
#endif

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_GENETICSCOMPONENT
#endif
    MCAPI void addAdditionalSaveData(class CompoundTag &) const;
    MCAPI struct GeneticsComponent::Gene * findGene(std::string const &);
    MCAPI void fireGeneEvents(class Actor &) const;
    MCAPI void initializeGenesFromParents(class Actor &, class Actor &, class Actor &);
    MCAPI void readAdditionalSaveData(class Actor &, class CompoundTag const &, class DataLoadHelper &);

//private:
    MCAPI struct GeneticsComponent::Gene _crossParentGenes(struct GeneDefinition const &, struct GeneticsComponent::Gene &, struct GeneticsComponent::Gene &);

private:
    MCAPI static std::string const GENE_ARRAY;
    MCAPI static std::string const HIDDEN_ALLELE;
    MCAPI static std::string const MAIN_ALLELE;

};