Cyrus Mod Loader
Loading...
Searching...
No Matches
PropertyClass Class Referenceabstract

Base class for all property classes, providing reflection and serialization functionality. More...

#include <PropertyClass.h>

Inheritance diagram for PropertyClass:
ActiveClassProject ActiveMapQuestsCommon ActiveMusicLoop ActiveTimedAccessPassList ActiveTimedPassEntry ActorDialogBase ActorDialogEntry ActorDialogListBase ActorMadlib AdvPvPEloEntryListWrapper AdvPvPEloRecord AdvPvPLeaderboardEntry AdvPvPLeaderboardEntryList AdvPvPLeaderboardVisualBlob AdvPvPLeagueAwardInfo AdvPvpLeaderboardFields AdvancedPetsConfig AdventurePartyEntryInfo AdventurePartyInfo AdventurePartyJoinInfo AdventurePartyJoinList AdventurePartyList AnimationPair AnimationSet AnimationSetManager AnimationSoundData ArenaMatchInfo ArenaMatchResults AssociatedWorldsList AttenuatedFileDescription AttenuatedFileList AtticObject AuctionHouseConfig AuctionHouseEntry AuctionHouseOffering AuctionPriceMods AuctionTemplateIDList AutobotConfig AutobotManager AutobotMobAvoidance AutobotQuestManager AutobotTiming AvatarItemInfoBase AvatarItemInfoList AvatarOptionBase BGPlayerInfo BGSigilTimer BadgeFilter BadgeFilterDescription BadgeFilterDescriptionList BadgeFilterInfo BadgeFilterInfoList BadgeInfo BadgeInfoList BadgeLeaderboardInfo BadgeLeaderboardInfoList BasePetMorphManager BaseZone BaseZone__BaseSimulation BasicChatChannelInfo BasicChatChannelInvite BasicChatPlayer BattleCardPurchaseInfo BattleCardShopOffering BattlegroundGroupMemberStatus BattlegroundGroupStatus BattlegroundMatchmaking BattlegroundMatchmakingChat BattlegroundPOI BattlegroundPOIData BattlegroundPlayerStats BattlegroundPlayerStatsManager BattlegroundPolymorphList BattlegroundPolymorphs BattlegroundTeamData BattlegroundTemplate BattlegroundTemplateChat BattlegroundTemplateChatList BehaviorInstance BehaviorInstance BehaviorTemplate BlobCacheInterface BlobDefinition BlobDirectory BlobRequest BlobRequestObject Body BodyOfWater BoosterPackData BoosterPackLootTypeMaxes BoosterPackSpaceHelper BracketIDList BracketInfo BracketMatchResult BracketReport BracketReportInfo BracketRewards BracketRewardsPlaceMapping BracketTeam BrowserWindowSettings BuddyEntry BugReport CSRAccessPassInfo CSRAccessPassList CSRPropertyEntry Camera CameraController CantripLevelInfo CantripXPConfig CastleGamesUpdate CastleMagicAction CastleMagicCameraInfo CastleMagicCinematicEffect CastleMagicItem CastleMagicItemDetector CastleMagicManager CastleMagicMovingObject CastleMagicPlayersInZone CastleMagicTimer CastleMagicTutorial CastleMagicTutorialWindow CastleTourHouseTemplateList CastleTourLeaderboardUpdate CastleTourMyCastleData CastleTourMyCastleDataList CastleTourTeleportInfo CaughtFish ChangePermissionsList CharMap CharacterChatStatsByState CharacterChatStatsByText CharacterCreationInfo CharacterElement CharacterElementTable CharacterRaceTable CharacterRegistry CharacterSet ChatDiagnostics ChatHistory ChatSpamHelper Cinematic CinematicAction CinematicActor CinematicActorAnimationContainer CinematicActorAnimationData CinematicEventInfo CinematicInteractInfo CinematicSoundEmitterInfo CinematicStageRelationship CinematicStageTemplate CinematicTemplate CinematicTemplateAnimationData ClaimedPeriodicOffers ClassInfo ClassProjectActiveList ClassProjectActivity ClassProjectFinalReward ClassProjectGlobalLootPoint ClassProjectLeaderboard ClassProjectLeaderboardPlayer ClassProjectLocation ClassProjectPlayer ClassProjectPlayerProgress ClassProjectPlayerProgressList ClassProjectProgressHistoryList ClassProjectReward ClassProjectTemplate ClassProjectUpdateList ClientCSRRegistryList ClientProcess ClientTagList ClientTutorial CollectedEssenceTrackingData CollectedEssenceTrackingList CollisionWorld CombatAction CombatActionListObj CombatCheatSettings CombatHealthListObj CombatObserver CombatParticipant CombatPipListObj CombatResolver CombatResult CombatResultListObj CombatRule CombatTimerListObj CombatTriggerDescription ComboItem CommonElementTable CompassMarker CompassSystem ComplexRotationInfo ConditionalSpellElement ControlButtonState ControlDraw__GesturePoint ControlDraw__Line ControlList__Column ControlList__Item ControlList__ListItemState ControlTab__Page ControlTileMap__CellInfo ControlTileMap__Tile ControlTree__Item CoreInfoTable CoreObject CoreObjectInfo CoreTemplate CreateGuildPlayerList CritAndBlockLevelData CritAndBlockValues CriticalObjectList CrownShopCategory CrownShopCategoryMenu CrownShopData CrownShopGiftRedemption CrownShopItem CrownShopLayout CrownShopOffering CrownShopPatch CrownShopPurchase CrownShopPurchasesInfo CrownShopSegReqsSummary CrownShopSettings CrownsRewardsEventData CrownsRewardsSchedule CurrentQuestCompilation CursorStyle CursorStyleManager CustomNameOptions DailyPvPData DailyPvPInfo DailyQuestData DailyQuestInfo DailyQuestReward DailyQuestRewardData DaysSinceItemPurchased DebugCinematicsComponent DebugWizardComponent DependentResourceContainer DerbyEffect DerbyPlayerContainer DespawnInfo DiegoPlayerStats DoodleDoug DoodleMapMap DoodleMapPair Duel DuelModifier DyeShopModifiers DynaMod DynaModList DynamicSigilInstance DynamicSigilRound DynamicSigilSubcircle DynamicSigilTeam DynamicSigilTurn DynamicURLDescriptor DynamicURLWhitelist EloConfig EloRank EloRatingsTable EmbeddedBrowserConfig EmbeddedBrowserConfigEntry EmojiData EmojiDefinition EquipSlot EquipmentSet EquipmentSetList EquippedItemInfo EquippedItemInfoList EquippedSlotInfo ExpansionData FXDef FXOverrideBehaviorInfo FidgetStateInfo FishHistory FishTournamentEntry FishTournamentUpdate FishingInfo FishingLevelInfo FishingXPConfig FlyThroughDataManager Font FontMapSWF FontMapping ForcedStateInfo FriendData FriendNotificationInfo FriendlyPlayerInfo FriendlyPlayerInfoList FriendlyPlayerQuestInfo FriendlyPlayerWorldList GameEffectBase GameEffectContainer GameEffectInfo GameEffectInfoList GameEffectTemplate GameEffectTemplateList GameEffectTimerTrigger GameObjectAnimData GameObjectAnimStateTracker GardenData GardenPlant GardeningLevelInfo GardeningPatchData GardeningXPConfig GeomParams GhostHider GoalCompilation GoalCompleteLogic GoalData Group GroupMember GroupObserver GuildAchievementData GuildAchievementDataList GuildAchievementInfo GuildAchievementList GuildChatInfo GuildChatList GuildGalleryEssenceList GuildMuseumArtifactInfo GuildMuseumDataList GuildMuseumExhibitInfo GuildMuseumGalleryInfo Hand HardwareStyle HatchmakingCrownsPetList HatchmakingPet HatchmakingPetGIDList HatchmakingPetTypesList HatchmakingPetsList HatchmakingPremiumPetsList HelpChatElement HelpChatOperator HouseNameList HouseTransferResult HouseTransferResultList HouseZone HousingBlob HousingBlobObject HousingGameHiScores HousingGameInterface HousingGameKhanDanceSequence HousingGameKhanDanceTurnData HousingGameManager HousingGameObjectReference HousingGamePlayerCollection HousingGamePowerUpLocations HousingItemList HousingLayout HousingLayoutObject HousingMusicManager HousingNode HousingNodeList HousingNodeReference HousingObjectState HousingObjectStateContainer HousingObjectTextureRemap HousingObjectWandContainer HousingPetMovement HousingPetMovementCompressed HousingSigilManager HousingTeleporterTargeting HousingWaterManager HubZoneMapping IgnoreEntryData IgnoreEntryDataList InclusiveRange InfractionCategory InfractionConfig InfractionEvent InfractionPenalty InfractionPenaltyInfo InfractionRecord Ingredient IngredientTracking InitialCombatSound InitialCombatSoundsList InitialPackageInfo InstanceInfo InstanceInfoList InteractiveMusicButtonSample InteractiveMusicLoop InteractiveMusicManager InteractiveMusicNote InteractiveMusicPlayerList ItemLocatorList ItemSetBonusData JewelSocket JewelSocketUnlockCost JewelSocketUnlockCostList JewelSocketWrenchElements JewelSocketWrenchRules KhanDancePlayer LeaderboardEntry LeaderboardEntryList LeaderboardUpdateFriendsList LeashOffsetOverride LevelScaledData LevelScaledInfo LevelUpElixirPropertyRegistryEntry LevelUpElixirSchoolSpecificData LikesDislikesEntry LocaleManager LocaleMapping LocationTemplate LockData LoginHistoryEntry LogoData LootInfoBase LootInfoList LootInfoListBase LoyaltyConfig LoyaltyInfoUpdateData LoyaltyPurchaseEntry LoyaltyPurchaseLimitCounterEntry LoyaltyStoreData LoyaltyStoreItem MadlibArg MadlibBlock MadlibBlockList MadlibIconData MadlibIconDefinition MagicLevelInfo MagicSchoolInfo MagicXPConfig Mail MailList MapData MapInfoManager__MapInfo MapInfoManager__MapInfo__DoodleData MapInfoRequirementsList MapInfoRequirementsPassedList MapInfoRequirementsRequest MassShapeTemplate MatchActor MatchActorList MatchActorResult MatchCostAdjustment MatchRequest MatchTeam MatchTeamResult Material MessageBoardList MessageBoardMessage MinigameConfig MinigameInfo MinigameSigilOptionAdvancedModeFields MinigameSigilOptionMonthlyGauntletFields MobRankLevel ModifyPipRoundRateData MonsterMagicLevelInfo MonsterMagicWorldTotal MonsterMagicWorldTotalList MonsterMagicXPConfig MoraleModificationMap MorphingException MountDyeToTexture MountRecord MountTable MoveBehavior__Controller MoveController__MoveCommand MoveStateAnimation MusicFileInfo MyStitchEntry MyStitchEntryList NPCDataList NamedCharacterElement NewBadgeData NodeDescriptor NodeObject NonCombatMayCastSpellDescription NumCategoryInInventory NumItemInInventory ObjState ObjStateCategory ObjStateOverrideInfo ObjStateSet ObjStateTransition ObjectBag ObjectLocation ObjectLocationList ObstacleCourseClientSettings OrderedWorlds PVP5thAgeLeagueTotals ParalyzeScriptLink ParticipantList ParticipantParameter ParticipantPipData ParticleEmitter2D PartnerLogoData PassInfo PassInfoList PathBehaviorTemplate__Action PathManager__NodeTemplateList PathManager__PathTemplateList PathObjectTemplate PendingClassProjectFriendReward PeriodicSubscription PeriodicSubscriptionsInfo Persona PestEntry PetDerbyRacerState PetDerbyRacerStats PetDerbyResult PetDerbyResults PetDerbyTrackInfo PetDerbyTrackManager PetDropFoodItem PetDropGameSettings PetDyeToTexture PetFeedingRewardConfig PetFeedingRewardInfo PetGameConfig PetGameEndData PetGameEnergyCost PetGameInfo PetGameMorphPartner PetLevelInfo PetSiegeGameManager PetStat PetStatModification PetStatModificationSet PetTalentsTriggeredSpells PetTalentsTriggeredSpellsData PetTomePetTotal PetTomePetTotalList PhotoInformation PhysicsSimMass PhysicsSimObject PipConversionLevelData PipConversionValues PipCount PlacementDisplayItem PlayDeck PlayList PlayListEntry PlaySoundInfo PlaySpellData PlayerHasBadge PlayerInteractiveMusicLoops PlayerStatueBlob PlayerStatueSettings PointData PolymorphImprovementRatingInfo PolymorphImprovementRatingInfoList PolymorphRatingInfo PremiumContentOption PremiumContentOptionList PriceModifiers PrivateEquippedJewelInfo PrivateSocketJewelPair PromoGift PromoGiftList PromoPromotion PromoPromotionList PromoReward PromoRewardList ProxyGeometry PublicEquippedJewelInfo PublicSocketJewelPair PvPLeagueTemplate PvPMatchJoinQueueRequirements PvPRatingsConfig PvPSeasonTemplate PvPUpdateMessage QuestCompilation QuestData QuestDynaModInfo QuestEffectDisplayInfo QuestEntry QuestFinderNPCData QuestListPage__DialogDataCacheEntry QuickChatEntry QuickSellItem QuickSellItemList RaceAnimationSoundData RadialMenuSlotInfo RatingBadgeInfo RatingInfo RealmInfo RealmInfoList RecentWizardInfo RecentWizardInfoList RecipeTypeList Reco__CategoryData Reco__LevelData Reco__RecoItemData RegistrarOptions Requirement ResourcePointerBase RespecTieredSpellList Result ResultList SG_GameAction SG_GameBlockType SG_GameEvent SG_GameInteraction SG_GameLevelData SG_GamePower SG_GameScoreMultiplier SavedCharacter SavedCharacterLists SavedDebugCommand SavedDebugCommandContainer SavedSetting SavedSettingContainer SchoolOfFocusOption ScoreTracking ScoreTrackingList Search__ResultItem Search__ResultList SegmentationInputData SegmentationRequrinment SegmentationRequrinmentsList ServiceMementoBase ServiceOptionBase ShadowPipRule ShadowPipRule__RoundPercent ShadowSpellTrackingData ShoppingColorModifiers ShoppingSellModifiers ShowcasedStoreItem ShowcasedStoreItemList SigilCamera SigilSubCircle SigilZoneInfo SigilZoneInfoManager SkyboxInfo Slot_Node_FXDef SoccerBall SocialSystemPlayerList SoftEnumList SoftwareStyle SortedCaughtFish SortedDirt SortedPot SoundFilterParam SoundFilterSetting SpawnItem SpawnManager SpawnObject SpawnPointTemplate Spell SpellData SpellDataList SpellEffect SpellEffectParamOverride SpellEffectPenalty SpellFavorites SpellIDTracker SpellNifSoundOverride SpellRank SpellSubEffectMetadata SplashCinematicInfo StateAssetInfo StitchLeaderboard StringListObj StringTable SubscriberOnlyItemsList SupportedObjectReference TabDisplayPriority TabDisplayPriorityList TalentInfo TallyCounterTemplate TargetCritHit TeamGIDToBracketID TeamHelpSigilMonthlyGauntletInfo TeamHelpUpdateInfo TeamHelpUpdateSigilInfo TeamHelpUpdateSigilInfoList TeamHelpVolunteerInfo TeamHelpVolunteerWorldList TeamHelpWorldInfo TeamHelpWorldInfoList TeleportTransitionTemplate TeleporterTemplate TemplateCache TemplateCache__Entry TemplateLocation TemplateManifest TerrainCheerCostMap TextComponent TextTagPair Texture TextureRemap TieredSpellConfig TieredSpellGroup TieredSpellGroupVisibility TieredSpellManager TieredSpellRetired TieredSpellRetiredSpellData TipData TitleOption ToSendCheerModsList TodaysQuestData TournamentConfig TournamentInfo TournamentInfoRequest TournamentUpdate TournamentUpdateFriendList TournamentUpdateList TrackedPlant TrainMovement TreasureShopModifiers TreasureShopOffering TutorialInfo TutorialZoneMod UIScaleConfig UIScaleConfigEntry UnlockTriggerInfo UnlockTriggerList UpFirstData UserAnimationEvent UserCapabilitiesInfo WeightedEntry WeightedList WhirlyBurlyAddGroup WhirlyBurlyGameInfo WhirlyBurlyGameList WhirlyBurlyGameState WhirlyBurlyMovementData WhirlyBurlyMovementDataAI WhirlyBurlyPlanningData WhirlyBurlyPlanningDataAI WhirlyBurlyRoundData WhirlyBurlyRoundDataAI WhirlyBurlyScoreUpdateData WhirlyBurlyStartGame WidgetBackground Window WindowAnimation WindowBubble WishlistItemInfo WizBangTemplate WizBangTemplateManager WizGameStats WizGoalData WizItemLocations WizItemQuestData WizItemVendorData WizMinigameOffering WizQuestData WizShopOffering WizStatisticEffectConfig WizardStatTable WorldHubZoneMapper WorldTeleportOptions ZoneData ZoneFish ZoneInstanceFish ZoneTokenBase ZoneTokenContainer ZoneTokenTimeTrigger

Public Member Functions

virtual char * getClassName ()=0
 Gets the class name of the derived class in the format class T[*].
 
virtual void * getPropertyList ()=0
 Constructs and caches the PropertyList for the derived class, adding all reflected members and member functions.
 
virtual bool copy (uint32_t a1)=0
 Copies the property class data.
 
virtual void * serialize (void *a2, uint32_t a3)=0
 Serializes the derived class's PropertyList as XML.
 
virtual bool onCreated ()=0
 Called when the PropertyClass is created.
 
template<typename T >
CYRUS T * as ()
 Casts this to a pointer of type T.
 
virtual void onPostLoad ()=0
 Called when the PropertyClass is loaded, i.e., initialize is called and onCreated has finished.
 
virtual void onFinalizeLoad ()=0
 
virtual bool shouldNotSerialize ()=0
 Determines if the PropertyClass should not be serialized.
 

Detailed Description

Base class for all property classes, providing reflection and serialization functionality.

Member Function Documentation

◆ as()

template<typename T >
CYRUS T * PropertyClass::as ( )
inline

Casts this to a pointer of type T.

Template Parameters
TThe type to cast to.
Returns
Pointer to this cast to type T.

◆ copy()

virtual bool PropertyClass::copy ( uint32_t a1)
pure virtual

Copies the property class data.

Parameters
a1Parameter for copy operation.
Returns
True if the copy operation is successful, false otherwise.

◆ getClassName()

virtual char * PropertyClass::getClassName ( )
pure virtual

Gets the class name of the derived class in the format class T[*].

Returns
Pointer to the class name string.

Implemented in ClassInfo, and PetTomePetTotal.

◆ getPropertyList()

virtual void * PropertyClass::getPropertyList ( )
pure virtual

Constructs and caches the PropertyList for the derived class, adding all reflected members and member functions.

Returns
Pointer to the PropertyList.

Implemented in ClientCSRRegistryList.

◆ onCreated()

virtual bool PropertyClass::onCreated ( )
pure virtual

Called when the PropertyClass is created.

Returns
True if the creation is successful, false otherwise.

◆ onFinalizeLoad()

virtual void PropertyClass::onFinalizeLoad ( )
pure virtual

◆ onPostLoad()

virtual void PropertyClass::onPostLoad ( )
pure virtual

Called when the PropertyClass is loaded, i.e., initialize is called and onCreated has finished.

◆ serialize()

virtual void * PropertyClass::serialize ( void * a2,
uint32_t a3 )
pure virtual

Serializes the derived class's PropertyList as XML.

Parameters
a2Pointer to the XML data.
a3Additional parameter for serialization.
Returns
Pointer to the serialized data.

◆ shouldNotSerialize()

virtual bool PropertyClass::shouldNotSerialize ( )
pure virtual

Determines if the PropertyClass should not be serialized.

Returns
True if the PropertyClass should not be serialized, false otherwise.