Interface ILcdInvalidateable

All Known Subinterfaces:
ILcdEditableComplexPolygon
All Known Implementing Classes:
ALcd2DEditablePolypoint, ALcdShapeList, TLcdAIXM51AbstractAirportGroundServiceTimeSlice, TLcdAIXM51AbstractAirportHeliportProtectionAreaTimeSlice, TLcdAIXM51AbstractAIXMFeature, TLcdAIXM51AbstractAIXMFeatureBase, TLcdAIXM51AbstractAIXMMessage, TLcdAIXM51AbstractAIXMMessageBase, TLcdAIXM51AbstractAIXMTimeSlice, TLcdAIXM51AbstractApproachLegTimeSlice, TLcdAIXM51AbstractGroundLightSystemTimeSlice, TLcdAIXM51AbstractMarkingTimeSlice, TLcdAIXM51AbstractNavaidEquipmentTimeSlice, TLcdAIXM51AbstractNavigationSystemCheckpointTimeSlice, TLcdAIXM51AbstractProcedureTimeSlice, TLcdAIXM51AbstractRadarEquipmentTimeSlice, TLcdAIXM51AbstractSegmentLegTimeSlice, TLcdAIXM51AbstractServiceTimeSlice, TLcdAIXM51AbstractSurveillanceRadarTimeSlice, TLcdAIXM51AbstractTrafficSeparationServiceTimeSlice, TLcdAIXM51AerialRefuellingTimeSlice, TLcdAIXM51AeronauticalGroundLightTimeSlice, TLcdAIXM51AircraftGroundServiceTimeSlice, TLcdAIXM51AircraftStandTimeSlice, TLcdAIXM51AirportClearanceServiceTimeSlice, TLcdAIXM51AirportHeliportCollocationTimeSlice, TLcdAIXM51AirportHeliportTimeSlice, TLcdAIXM51AirportHotSpotTimeSlice, TLcdAIXM51AirportProtectionAreaMarkingTimeSlice, TLcdAIXM51AirportSuppliesServiceTimeSlice, TLcdAIXM51AirspaceBorderCrossingTimeSlice, TLcdAIXM51AirspaceTimeSlice, TLcdAIXM51AirTrafficControlServiceTimeSlice, TLcdAIXM51AirTrafficManagementServiceTimeSlice, TLcdAIXM51AltimeterSourceTimeSlice, TLcdAIXM51AngleIndicationTimeSlice, TLcdAIXM51ApproachLightingSystemTimeSlice, TLcdAIXM51ApronElementTimeSlice, TLcdAIXM51ApronLightSystemTimeSlice, TLcdAIXM51ApronMarkingTimeSlice, TLcdAIXM51ApronTimeSlice, TLcdAIXM51ArrestingGearTimeSlice, TLcdAIXM51ArrivalFeederLegTimeSlice, TLcdAIXM51ArrivalLegTimeSlice, TLcdAIXM51AuthorityForAirspaceTimeSlice, TLcdAIXM51AzimuthTimeSlice, TLcdAIXM51ChangeOverPointTimeSlice, TLcdAIXM51CheckpointINSTimeSlice, TLcdAIXM51CheckpointVORTimeSlice, TLcdAIXM51CirclingAreaTimeSlice, TLcdAIXM51Curve, TLcdAIXM51DeicingAreaMarkingTimeSlice, TLcdAIXM51DeicingAreaTimeSlice, TLcdAIXM51DepartureLegTimeSlice, TLcdAIXM51DesignatedPointTimeSlice, TLcdAIXM51DirectionFinderTimeSlice, TLcdAIXM51DistanceIndicationTimeSlice, TLcdAIXM51DMETimeSlice, TLcdAIXM51ElevatedCurve, TLcdAIXM51ElevatedSurface, TLcdAIXM51ElevationTimeSlice, TLcdAIXM51Feature, TLcdAIXM51FinalLegTimeSlice, TLcdAIXM51FireFightingServiceTimeSlice, TLcdAIXM51FlightRestrictionTimeSlice, TLcdAIXM51FloatingDockSiteTimeSlice, TLcdAIXM51GeoBorderTimeSlice, TLcdAIXM51GlidepathTimeSlice, TLcdAIXM51GroundTrafficControlServiceTimeSlice, TLcdAIXM51GuidanceLineLightSystemTimeSlice, TLcdAIXM51GuidanceLineMarkingTimeSlice, TLcdAIXM51GuidanceLineTimeSlice, TLcdAIXM51HoldingAssessmentTimeSlice, TLcdAIXM51HoldingPatternTimeSlice, TLcdAIXM51InformationServiceTimeSlice, TLcdAIXM51InitialLegTimeSlice, TLcdAIXM51InstrumentApproachProcedureTimeSlice, TLcdAIXM51IntermediateLegTimeSlice, TLcdAIXM51LocalizerTimeSlice, TLcdAIXM51MarkerBeaconTimeSlice, TLcdAIXM51MarkingBuoyTimeSlice, TLcdAIXM51MissedApproachLegTimeSlice, TLcdAIXM51NavaidTimeSlice, TLcdAIXM51NavigationAreaRestrictionTimeSlice, TLcdAIXM51NavigationAreaTimeSlice, TLcdAIXM51NDBTimeSlice, TLcdAIXM51NonMovementAreaTimeSlice, TLcdAIXM51ObstacleAreaTimeSlice, TLcdAIXM51OrganisationAuthorityTimeSlice, TLcdAIXM51PassengerLoadingBridgeTimeSlice, TLcdAIXM51PassengerServiceTimeSlice, TLcdAIXM51PilotControlledLightingTimeSlice, TLcdAIXM51PrecisionApproachRadarTimeSlice, TLcdAIXM51PrimarySurveillanceRadarTimeSlice, TLcdAIXM51ProcedureDMETimeSlice, TLcdAIXM51RadarSystemTimeSlice, TLcdAIXM51RadioCommunicationChannelTimeSlice, TLcdAIXM51RadioFrequencyAreaTimeSlice, TLcdAIXM51RoadTimeSlice, TLcdAIXM51RouteDMETimeSlice, TLcdAIXM51RouteSegmentTimeSlice, TLcdAIXM51RouteTimeSlice, TLcdAIXM51RulesProceduresTimeSlice, TLcdAIXM51RunwayBlastPadTimeSlice, TLcdAIXM51RunwayCentrelinePointTimeSlice, TLcdAIXM51RunwayDirectionLightSystemTimeSlice, TLcdAIXM51RunwayDirectionTimeSlice, TLcdAIXM51RunwayElementTimeSlice, TLcdAIXM51RunwayMarkingTimeSlice, TLcdAIXM51RunwayProtectAreaLightSystemTimeSlice, TLcdAIXM51RunwayProtectAreaTimeSlice, TLcdAIXM51RunwayTimeSlice, TLcdAIXM51RunwayVisualRangeTimeSlice, TLcdAIXM51SafeAltitudeAreaTimeSlice, TLcdAIXM51SDFTimeSlice, TLcdAIXM51SeaplaneLandingAreaTimeSlice, TLcdAIXM51SeaplaneRampSiteTimeSlice, TLcdAIXM51SearchRescueServiceTimeSlice, TLcdAIXM51SecondarySurveillanceRadarTimeSlice, TLcdAIXM51SignificantPointInAirspaceTimeSlice, TLcdAIXM51SpecialDateTimeSlice, TLcdAIXM51SpecialNavigationStationTimeSlice, TLcdAIXM51SpecialNavigationSystemTimeSlice, TLcdAIXM51StandardInstrumentArrivalTimeSlice, TLcdAIXM51StandardInstrumentDepartureTimeSlice, TLcdAIXM51StandardLevelColumnTimeSlice, TLcdAIXM51StandardLevelSectorTimeSlice, TLcdAIXM51StandardLevelTableTimeSlice, TLcdAIXM51StandMarkingTimeSlice, TLcdAIXM51Surface, TLcdAIXM51SurveyControlPointTimeSlice, TLcdAIXM51TACANTimeSlice, TLcdAIXM51TaxiHoldingPositionLightSystemTimeSlice, TLcdAIXM51TaxiHoldingPositionMarkingTimeSlice, TLcdAIXM51TaxiHoldingPositionTimeSlice, TLcdAIXM51TaxiwayElementTimeSlice, TLcdAIXM51TaxiwayLightSystemTimeSlice, TLcdAIXM51TaxiwayMarkingTimeSlice, TLcdAIXM51TaxiwayTimeSlice, TLcdAIXM51TerminalArrivalAreaTimeSlice, TLcdAIXM51TouchDownLiftOffLightSystemTimeSlice, TLcdAIXM51TouchDownLiftOffMarkingTimeSlice, TLcdAIXM51TouchDownLiftOffSafeAreaTimeSlice, TLcdAIXM51TouchDownLiftOffTimeSlice, TLcdAIXM51UnitTimeSlice, TLcdAIXM51UnplannedHoldingTimeSlice, TLcdAIXM51VerticalStructureTimeSlice, TLcdAIXM51VisualGlideSlopeIndicatorTimeSlice, TLcdAIXM51VORTimeSlice, TLcdAIXM51WorkAreaTimeSlice, TLcdAssociationBasedAirspace, TLcdASTERIXWeatherPicture, TLcdATSRoute, TLcdCGMPolygon, TLcdCGMPolyline, TLcdComplexPolygon, TLcdDataObjectShapeList, TLcdDGN3DSurface, TLcdDGNCell, TLcdDGNComplexChain, TLcdDGNComplexShape, TLcdDGNCurve2D, TLcdDGNLineString2D, TLcdDGNShape2D, TLcdDGNSolid, TLcdDGNTextNode2D, TLcdDiscretizedLonLatGeoPath, TLcdDWGBlock, TLcdDWGFace3D, TLcdDWGPolyline2D, TLcdDWGSolid, TLcdEditableAPP6AObject, TLcdEditableMS2525bObject, TLcdExtrudedShape, TLcdFeaturedAssociationBasedAirspace, TLcdFeaturedATSRoute, TLcdFeaturedMilitaryTrainingRoute, TLcdFeaturedMinimumSectorAltitude, TLcdFeaturedMultiShapeList, TLcdFeaturedShapeList, TLcdGML2AbstractFeature, TLcdGML2AbstractFeatureCollection, TLcdGML2AbstractFeatureCollectionBase, TLcdGML2GeometryCollection, TLcdGML2MultiLineString, TLcdGML2MultiPoint, TLcdGML2MultiPolygon, TLcdGML31AbstractContinuousCoverage, TLcdGML31AbstractCoverage, TLcdGML31AbstractDiscreteCoverage, TLcdGML31AbstractFeature, TLcdGML31AbstractFeatureCollection, TLcdGML31AbstractGeometricAggregate, TLcdGML31BoundedFeature, TLcdGML31Curve, TLcdGML31DirectedObservation, TLcdGML31DirectedObservationAtDistance, TLcdGML31DynamicFeature, TLcdGML31DynamicFeatureCollection, TLcdGML31FeatureCollection, TLcdGML31GridCoverage, TLcdGML31LinearRing, TLcdGML31Model, TLcdGML31MultiCurve, TLcdGML31MultiCurveCoverage, TLcdGML31MultiGeometry, TLcdGML31MultiLineString, TLcdGML31MultiPoint, TLcdGML31MultiPointCoverage, TLcdGML31MultiPolygon, TLcdGML31MultiSolid, TLcdGML31MultiSolidCoverage, TLcdGML31MultiSurface, TLcdGML31MultiSurfaceCoverage, TLcdGML31Observation, TLcdGML31PolyhedralSurface, TLcdGML31RectifiedGridCoverage, TLcdGML31Surface, TLcdGML31Tin, TLcdGML31TriangulatedSurface, TLcdGML32AbstractContinuousCoverage, TLcdGML32AbstractCoverage, TLcdGML32AbstractFeature, TLcdGML32AbstractFeatureCollection, TLcdGML32AbstractGeometricAggregate, TLcdGML32Curve, TLcdGML32DirectedObservation, TLcdGML32DirectedObservationAtDistance, TLcdGML32DiscreteCoverage, TLcdGML32DynamicFeature, TLcdGML32DynamicFeatureCollection, TLcdGML32FeatureCollection, TLcdGML32LinearRing, TLcdGML32Model, TLcdGML32MultiCurve, TLcdGML32MultiGeometry, TLcdGML32MultiPoint, TLcdGML32MultiSolid, TLcdGML32MultiSurface, TLcdGML32Observation, TLcdGML32Surface, TLcdGML32Tin, TLcdLonLatMPolygon, TLcdLonLatMPolyline, TLcdLonLatMPolypoint, TLcdLonLatPolygon, TLcdLonLatPolyline, TLcdLonLatPolypoint, TLcdLonLatRhumbPolygon, TLcdLonLatRhumbPolyline, TLcdMeasureXYPolygon, TLcdMeasureXYPolyline, TLcdMeasureXYPolypoint, TLcdMIFCollection, TLcdMIFMultipoint, TLcdMIFPLine, TLcdMIFRegion, TLcdMIFText, TLcdMilitaryTrainingRoute, TLcdMinimumSectorAltitude, TLcdNVG15Anchor, TLcdNVG15Arc, TLcdNVG15ArcBand, TLcdNVG15Arrow, TLcdNVG15Circle, TLcdNVG15Composite, TLcdNVG15Corridor, TLcdNVG15Ellipse, TLcdNVG15Group, TLcdNVG15Polygon, TLcdNVG15Polyline, TLcdNVG20Arc, TLcdNVG20ArcBand, TLcdNVG20ArcBandRing, TLcdNVG20Arrow, TLcdNVG20Circle, TLcdNVG20CircularRing, TLcdNVG20Composite, TLcdNVG20Corridor, TLcdNVG20Ellipse, TLcdNVG20EllipticRing, TLcdNVG20Group, TLcdNVG20LinearRing, TLcdNVG20MultiPoint, TLcdNVG20Orbit, TLcdNVG20Polygon, TLcdNVG20Polyline, TLcdNVG20Rectangle, TLcdNVG20RectangularRing, TLcdProcedureTrajectory, TLcdRoundedPolygon, TLcdRoundedPolyline, TLcdS57Area, TLcdS57Face, TLcdS57Line, TLcdSegmentBasedRoute, TLcdShapeList, TLcdXYMPolygon, TLcdXYMPolyline, TLcdXYMPolypoint, TLcdXYPolygon, TLcdXYPolyline, TLcdXYPolypoint, TLcySLDDomainObject, TLfnReplicationAreaOfInterest

public interface ILcdInvalidateable
Interface providing a generic mechanism for invalidating a composite object when one or more of its compositing values has changed.

Objects often internally cache values which are expensive to compute: an object with a large number of fields may cache its hash code, a polygon may cache its bounds, ... These cached values need to be recomputed whenever the fields that were used to compute the value have changed. In most cases, an object will know when to clear these values, for example because a method that changes a field has been called on the object, or the object is notified of a change via a listener event.

When an object (parent) is composited of multiple other objects (children) which are mutable themselves, and the parent object cannot register itself as a listener to its children, the parent object won't have a mechanism to know when its cached values need to be invalidated. The parent may then implement this interface to provide a way to notify it that it needs to invalidate its cached values. It is the responsibility of the person who changes the child(ren) to notify the parent after the change, via the invalidateObject() method provided by this interface.

Since:
10.1
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Invalidates all cached values of this object.
  • Method Details

    • invalidateObject

      void invalidateObject()
      Invalidates all cached values of this object. Call this method whenever one or more of this object's compositing values has been changed, to notify this object it needs to recompute its cached values.