luxlabs header browser preview


@class _HMDPendingRegionUpdate, NSUUID, CLLocation, NSDate, HMFMessageDispatcher, NSObject, NSTimeZone, NSString, HMDHomeLocationData, NSSet, HMDHome, HMFTimer, CLRegion;
@protocol OS_dispatch_queue;

@interface HMDHomeLocationHandler : HMFObject <HMDBatchLocationDelegate, HMFLogging, HMFTimerDelegate, HMDHomeMessageReceiver, NSSecureCoding> {
    struct os_unfair_recursive_lock_s { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } ourl_lock; unsigned int ourl_count; } _lock;
}

@property (class, readonly) BOOL hasMessageReceiverChildren;
@property (class, readonly) BOOL supportsSecureCoding;

@property (retain, nonatomic) NSObject<OS_dispatch_queue> *workQueue;
@property (retain, nonatomic) HMFMessageDispatcher *msgDispatcher;
@property (weak, nonatomic) HMDHome *home;
@property (retain, nonatomic) NSDate *locationUpdateTimestamp;
@property (nonatomic) long long locationAuthorization;
@property (retain, nonatomic) CLRegion *regionAtHome;
@property (retain, nonatomic) CLRegion *regionNearbyHome;
@property (nonatomic) long long regionStateAtHome;
@property (nonatomic) long long regionStateNearbyHome;
@property (retain, nonatomic) NSString *isoCountryCode;
@property (nonatomic) BOOL firstAccessoryReachable;
@property (retain, nonatomic) HMFTimer *homeRegionUpdateTimer;
@property (retain, nonatomic) _HMDPendingRegionUpdate *pendingAtHomeRegionUpdate;
@property (retain, nonatomic) _HMDPendingRegionUpdate *pendingNearbyHomeRegionUpdate;
@property (nonatomic) double coalesceRegionUpdateIntervalInSeconds;
@property (retain, nonatomic) NSDate *lastArrival;
@property (retain, nonatomic) NSDate *lastExit;
@property (retain, nonatomic) CLLocation *location;
@property (retain, nonatomic) NSTimeZone *timeZone;
@property (readonly, nonatomic) HMDHomeLocationData *locationData;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, copy) NSSet *messageReceiverChildren;
@property (readonly, nonatomic) NSUUID *messageTargetUUID;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *messageReceiveQueue;

+ (id)logCategory;

- (void)timerDidFire:(id)a0;
- (id)init;
- (void)dealloc;
- (void)encodeWithCoder:(id)a0;
- (id)logIdentifier;
- (void).cxx_destruct;
- (id)messageDestination;
- (id)initWithCoder:(id)a0;
- (void)_registerForMessages;
- (long long)__getAtHomeCalculatedState;
- (long long)__getNearByHomeCalculatedState;
- (id)__initForUnitTesting:(double)a0 home:(id)a1 queue:(id)a2 messageDispatcher:(id)a3 location:(id)a4;
- (void)__simulateAtHomeRegionState:(long long)a0;
- (void)__simulateNearByHomeRegionState:(long long)a0;
- (BOOL)_canExtractBatchLocations;
- (void)_evaluateHomeRegionStateForCurrentDeviceLocation:(id)a0;
- (id)_handleHomeLocationData:(id)a0 message:(id)a1;
- (id)_handleHomeLocationDataForHH2:(id)a0 fromMessage:(id)a1;
- (void)_handleLocationAuthorization:(long long)a0;
- (void)_handleLocationAuthorizationChangedNotification:(id)a0;
- (void)_handleRetrieveLocation:(id)a0;
- (BOOL)_needToExtractBatchLocations;
- (void)_processPendingRegionStateUpdates;
- (void)_registerForRegionUpdate;
- (void)_sendLocationUpdateToClients;
- (BOOL)_shouldRegisterForSignificantRegion;
- (void)_updateTimeZone:(id)a0;
- (void)accessoriesBecomeReachable;
- (void)accessoriesBecomeUnreachable;
- (BOOL)calculateAndUpdateRegionState:(long long)a0;
- (void)checkFalsePresence;
- (void)coalesceRegionUpdateState:(long long)a0 forRegion:(id)a1;
- (void)configure:(id)a0 queue:(id)a1 messageDispatcher:(id)a2;
- (void)didDetermineBatchLocation:(id)a0;
- (void)didDetermineLocation:(id)a0;
- (void)didDetermineState:(long long)a0 forRegion:(id)a1;
- (void)getReachableIPAccessory:(unsigned long long *)a0 btleAccessory:(unsigned long long *)a1 mediaAccessory:(unsigned long long *)a2;
- (BOOL)isDate:(id)a0 laterThanDate:(id)a1;
- (BOOL)isLocation:(id)a0 closeToLocation:(id)a1;
- (BOOL)isNewHomeLocationTooCloseToPreviousLocation:(id)a0 newLocation:(id)a1;
- (void)runTransactionWithLocation:(id)a0 updatedTime:(id)a1 source:(long long)a2;
- (BOOL)shouldUpdateLocationFromLocationData:(id)a0;
- (void)updateHomeLocation;
- (void)updateHomeLocationFromCoreRoutine;
- (BOOL)updateRegionStateFromLocation:(id)a0;
- (void)handleHomeLocationForHH2:(id)a0 updatedTime:(id)a1 source:(long long)a2;
- (void)sendHomeLocationUpdateToResident:(id)a0 source:(long long)a1;

@end