Program Listing for File Layer.h

Program Listing for File Layer.h#

Return to documentation for file (include/Karana/Scene/Layer.h)

/*
*Copyright(c)2024-2026KaranaDynamicsPtyLtd.Allrightsreserved.
*
*NOTICETOUSER:
*
*Thissourcecodeand/ordocumentation(the"LicensedMaterials")is
*theconfidentialandproprietaryinformationofKaranaDynamicsInc.
*UseoftheseLicensedMaterialsisgovernedbythetermsandconditions
*ofaseparatesoftwarelicenseagreementbetweenKaranaDynamicsandthe
*Licensee("LicenseAgreement").Unlessexpresslypermittedunderthat
*agreement,anyreproduction,modification,distribution,ordisclosure
*oftheLicensedMaterials,inwholeorinpart,toanythirdparty
*withoutthepriorwrittenconsentofKaranaDynamicsisstrictlyprohibited.
*
*THELICENSEDMATERIALSAREPROVIDED"ASIS"WITHOUTWARRANTYOFANYKIND.
*KARANADYNAMICSDISCLAIMSALLWARRANTIES,EXPRESSORIMPLIED,INCLUDING
*BUTNOTLIMITEDTOWARRANTIESOFMERCHANTABILITY,NON-INFRINGEMENT,AND
*FITNESSFORAPARTICULARPURPOSE.
*
*INNOEVENTSHALLKARANADYNAMICSBELIABLEFORANYDAMAGESWHATSOEVER,
*INCLUDINGBUTNOTLIMITEDTOLOSSOFPROFITS,DATA,ORUSE,EVENIF
*ADVISEDOFTHEPOSSIBILITYOFSUCHDAMAGES,WHETHERINCONTRACT,TORT,
*OROTHERWISEARISINGOUTOFORINCONNECTIONWITHTHELICENSEDMATERIALS.
*
*U.S.GovernmentEndUsers:TheLicensedMaterialsarea"commercialitem"
*asdefinedat48C.F.R.2.101,andareprovidedtotheU.S.Government
*onlyasacommercialenditemunderthetermsofthislicense.
*
*AnyuseoftheLicensedMaterialsinindividualorcommercialsoftwaremust
*include,intheuserdocumentationandinternalsourcecodecomments,
*thisNotice,Disclaimer,andU.S.GovernmentUseProvision.
*/


#pragmaonce
#include<cstdint>

namespaceKarana::Scene{
usinglayer_t=uint32_t;

/*
*Customlayers
*/

inlineconstexprlayer_tLAYER_CUSTOM0=layer_t{1}<<0;

inlineconstexprlayer_tLAYER_CUSTOM1=layer_t{1}<<1;

inlineconstexprlayer_tLAYER_CUSTOM2=layer_t{1}<<2;

inlineconstexprlayer_tLAYER_CUSTOM3=layer_t{1}<<3;

inlineconstexprlayer_tLAYER_CUSTOM4=layer_t{1}<<4;

inlineconstexprlayer_tLAYER_CUSTOM5=layer_t{1}<<5;

inlineconstexprlayer_tLAYER_CUSTOM6=layer_t{1}<<6;

inlineconstexprlayer_tLAYER_CUSTOM7=layer_t{1}<<7;

inlineconstexprlayer_tLAYER_CUSTOM8=layer_t{1}<<8;

inlineconstexprlayer_tLAYER_CUSTOM9=layer_t{1}<<9;

inlineconstexprlayer_tLAYER_CUSTOM10=layer_t{1}<<10;

inlineconstexprlayer_tLAYER_CUSTOM11=layer_t{1}<<11;

inlineconstexprlayer_tLAYER_CUSTOM12=layer_t{1}<<12;

inlineconstexprlayer_tLAYER_CUSTOM13=layer_t{1}<<13;

inlineconstexprlayer_tLAYER_CUSTOM14=layer_t{1}<<14;

inlineconstexprlayer_tLAYER_CUSTOM15=layer_t{1}<<15;

inlineconstexprlayer_tLAYER_CUSTOM16=layer_t{1}<<16;

inlineconstexprlayer_tLAYER_CUSTOM17=layer_t{1}<<17;

inlineconstexprlayer_tLAYER_CUSTOM18=layer_t{1}<<18;

inlineconstexprlayer_tLAYER_CUSTOM19=layer_t{1}<<19;

inlineconstexprlayer_tLAYER_CUSTOM20=layer_t{1}<<20;

inlineconstexprlayer_tLAYER_CUSTOM21=layer_t{1}<<21;

inlineconstexprlayer_tLAYER_CUSTOM22=layer_t{1}<<22;

inlineconstexprlayer_tLAYER_CUSTOM23=layer_t{1}<<23;

/*
*Reservedlayers
*/

inlineconstexprlayer_tLAYER_RESERVED0=layer_t{1}<<24;

inlineconstexprlayer_tLAYER_RESERVED1=layer_t{1}<<25;

inlineconstexprlayer_tLAYER_RESERVED2=layer_t{1}<<26;

inlineconstexprlayer_tLAYER_RESERVED3=layer_t{1}<<27;

inlineconstexprlayer_tLAYER_RESERVED4=layer_t{1}<<28;

inlineconstexprlayer_tLAYER_RESERVED5=layer_t{1}<<29;

inlineconstexprlayer_tLAYER_RESERVED6=layer_t{1}<<30;

inlineconstexprlayer_tLAYER_RESERVED7=layer_t{1}<<31;

/*
*Graphicallayers
*/

inlineconstexprlayer_tLAYER_PHYSICAL_GRAPHICS=LAYER_RESERVED0;

inlineconstexprlayer_tLAYER_ORNAMENTAL=LAYER_RESERVED1;

inlineconstexprlayer_tLAYER_STICK_FIGURE=LAYER_RESERVED2;

/*
*Otherassignedlayers
*/

inlineconstexprlayer_tLAYER_COLLISION=LAYER_RESERVED3;

/*
*Layersets
*/

inlineconstexprlayer_tLAYER_NONE=0;

inlineconstexprlayer_tLAYER_ALL=UINT32_MAX;

inlineconstexprlayer_tLAYER_PHYSICAL=LAYER_COLLISION|LAYER_PHYSICAL_GRAPHICS;
inlineconstexprlayer_tLAYER_GRAPHICS=
LAYER_PHYSICAL_GRAPHICS|LAYER_ORNAMENTAL|LAYER_STICK_FIGURE;
}//namespaceKarana::Scene