v1

package
v0.0.0-...-455d0e3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2026 License: AGPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	TagReason_name = map[int32]string{
		0: "TAG_REASON_UNSPECIFIED",
		1: "TAG_REASON_PERIODIC",
		2: "TAG_REASON_IDENTITY_CHANGED",
		3: "TAG_REASON_HAZARD",
		4: "TAG_REASON_DWELL_START",
		5: "TAG_REASON_FALL",
		6: "TAG_REASON_DEMENTIA_SIGNAL",
	}
	TagReason_value = map[string]int32{
		"TAG_REASON_UNSPECIFIED":      0,
		"TAG_REASON_PERIODIC":         1,
		"TAG_REASON_IDENTITY_CHANGED": 2,
		"TAG_REASON_HAZARD":           3,
		"TAG_REASON_DWELL_START":      4,
		"TAG_REASON_FALL":             5,
		"TAG_REASON_DEMENTIA_SIGNAL":  6,
	}
)

Enum value maps for TagReason.

View Source
var (
	DementiaSignalKind_name = map[int32]string{
		0: "DEMENTIA_SIGNAL_KIND_UNSPECIFIED",
		1: "DEMENTIA_SIGNAL_KIND_PACING",
		2: "DEMENTIA_SIGNAL_KIND_SUNDOWNING_INDEX",
		3: "DEMENTIA_SIGNAL_KIND_BATHROOM_DWELL_ANOMALY",
		4: "DEMENTIA_SIGNAL_KIND_NIGHTTIME_MOVEMENT",
		5: "DEMENTIA_SIGNAL_KIND_STILLNESS_ANOMALY",
		6: "DEMENTIA_SIGNAL_KIND_ABSENCE",
		7: "DEMENTIA_SIGNAL_KIND_FALL_SUSPECTED",
		8: "DEMENTIA_SIGNAL_KIND_GAIT_SLOWING",
		9: "DEMENTIA_SIGNAL_KIND_AGITATION_INDEX",
	}
	DementiaSignalKind_value = map[string]int32{
		"DEMENTIA_SIGNAL_KIND_UNSPECIFIED":            0,
		"DEMENTIA_SIGNAL_KIND_PACING":                 1,
		"DEMENTIA_SIGNAL_KIND_SUNDOWNING_INDEX":       2,
		"DEMENTIA_SIGNAL_KIND_BATHROOM_DWELL_ANOMALY": 3,
		"DEMENTIA_SIGNAL_KIND_NIGHTTIME_MOVEMENT":     4,
		"DEMENTIA_SIGNAL_KIND_STILLNESS_ANOMALY":      5,
		"DEMENTIA_SIGNAL_KIND_ABSENCE":                6,
		"DEMENTIA_SIGNAL_KIND_FALL_SUSPECTED":         7,
		"DEMENTIA_SIGNAL_KIND_GAIT_SLOWING":           8,
		"DEMENTIA_SIGNAL_KIND_AGITATION_INDEX":        9,
	}
)

Enum value maps for DementiaSignalKind.

View Source
var (
	DementiaSignalSeverity_name = map[int32]string{
		0: "DEMENTIA_SIGNAL_SEVERITY_UNSPECIFIED",
		1: "DEMENTIA_SIGNAL_SEVERITY_INFO",
		2: "DEMENTIA_SIGNAL_SEVERITY_WARNING",
		3: "DEMENTIA_SIGNAL_SEVERITY_EMERGENCY",
	}
	DementiaSignalSeverity_value = map[string]int32{
		"DEMENTIA_SIGNAL_SEVERITY_UNSPECIFIED": 0,
		"DEMENTIA_SIGNAL_SEVERITY_INFO":        1,
		"DEMENTIA_SIGNAL_SEVERITY_WARNING":     2,
		"DEMENTIA_SIGNAL_SEVERITY_EMERGENCY":   3,
	}
)

Enum value maps for DementiaSignalSeverity.

View Source
var (
	PresenceEventType_name = map[int32]string{
		0: "PRESENCE_EVENT_TYPE_UNSPECIFIED",
		1: "PRESENCE_EVENT_TYPE_APPEARED",
		2: "PRESENCE_EVENT_TYPE_DISAPPEARED",
	}
	PresenceEventType_value = map[string]int32{
		"PRESENCE_EVENT_TYPE_UNSPECIFIED": 0,
		"PRESENCE_EVENT_TYPE_APPEARED":    1,
		"PRESENCE_EVENT_TYPE_DISAPPEARED": 2,
	}
)

Enum value maps for PresenceEventType.

View Source
var (
	DwellEventType_name = map[int32]string{
		0: "DWELL_EVENT_TYPE_UNSPECIFIED",
		1: "DWELL_EVENT_TYPE_STARTED",
		2: "DWELL_EVENT_TYPE_ENDED",
	}
	DwellEventType_value = map[string]int32{
		"DWELL_EVENT_TYPE_UNSPECIFIED": 0,
		"DWELL_EVENT_TYPE_STARTED":     1,
		"DWELL_EVENT_TYPE_ENDED":       2,
	}
)

Enum value maps for DwellEventType.

View Source
var File_continuoustracking_v1_frame_proto protoreflect.FileDescriptor
View Source
var File_continuoustracking_v1_scene_proto protoreflect.FileDescriptor
View Source
var File_continuoustracking_v1_signals_proto protoreflect.FileDescriptor
View Source
var File_continuoustracking_v1_tracking_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type BoundingBox

type BoundingBox struct {
	XMin int32 `protobuf:"varint,1,opt,name=x_min,json=xMin,proto3" json:"x_min,omitempty"`
	YMin int32 `protobuf:"varint,2,opt,name=y_min,json=yMin,proto3" json:"y_min,omitempty"`
	XMax int32 `protobuf:"varint,3,opt,name=x_max,json=xMax,proto3" json:"x_max,omitempty"`
	YMax int32 `protobuf:"varint,4,opt,name=y_max,json=yMax,proto3" json:"y_max,omitempty"`
	// contains filtered or unexported fields
}

BoundingBox in pixel coordinates: top-left origin, width/height positive.

func (*BoundingBox) Descriptor deprecated

func (*BoundingBox) Descriptor() ([]byte, []int)

Deprecated: Use BoundingBox.ProtoReflect.Descriptor instead.

func (*BoundingBox) GetXMax

func (x *BoundingBox) GetXMax() int32

func (*BoundingBox) GetXMin

func (x *BoundingBox) GetXMin() int32

func (*BoundingBox) GetYMax

func (x *BoundingBox) GetYMax() int32

func (*BoundingBox) GetYMin

func (x *BoundingBox) GetYMin() int32

func (*BoundingBox) ProtoMessage

func (*BoundingBox) ProtoMessage()

func (*BoundingBox) ProtoReflect

func (x *BoundingBox) ProtoReflect() protoreflect.Message

func (*BoundingBox) Reset

func (x *BoundingBox) Reset()

func (*BoundingBox) String

func (x *BoundingBox) String() string

type DementiaSignal

type DementiaSignal struct {

	// Unique stable signal ID. Computed deterministically from
	// (identity_id, kind, window_start, window_end) so a re-emission of the
	// same window is idempotent on the consumer side.
	SignalId string `protobuf:"bytes,1,opt,name=signal_id,json=signalId,proto3" json:"signal_id,omitempty"`
	// Resident the signal is about.
	IdentityId string                 `protobuf:"bytes,2,opt,name=identity_id,json=identityId,proto3" json:"identity_id,omitempty"`
	Kind       DementiaSignalKind     `protobuf:"varint,3,opt,name=kind,proto3,enum=continuoustracking.v1.DementiaSignalKind" json:"kind,omitempty"`
	Severity   DementiaSignalSeverity `protobuf:"varint,4,opt,name=severity,proto3,enum=continuoustracking.v1.DementiaSignalSeverity" json:"severity,omitempty"`
	// Raw value of the signal in its natural units (steps, minutes, etc).
	Value float32 `protobuf:"fixed32,5,opt,name=value,proto3" json:"value,omitempty"`
	// Per-resident historical baseline. Optional; encoded via has_baseline.
	HasBaseline bool    `protobuf:"varint,6,opt,name=has_baseline,json=hasBaseline,proto3" json:"has_baseline,omitempty"`
	Baseline    float32 `protobuf:"fixed32,7,opt,name=baseline,proto3" json:"baseline,omitempty"`
	// z-score relative to the baseline distribution. Optional.
	HasZScore bool    `protobuf:"varint,8,opt,name=has_z_score,json=hasZScore,proto3" json:"has_z_score,omitempty"`
	ZScore    float32 `protobuf:"fixed32,9,opt,name=z_score,json=zScore,proto3" json:"z_score,omitempty"`
	// Window the signal was computed over.
	WindowStartUnixNs uint64 `protobuf:"fixed64,10,opt,name=window_start_unix_ns,json=windowStartUnixNs,proto3" json:"window_start_unix_ns,omitempty"`
	WindowEndUnixNs   uint64 `protobuf:"fixed64,11,opt,name=window_end_unix_ns,json=windowEndUnixNs,proto3" json:"window_end_unix_ns,omitempty"`
	// When the worker emitted the signal (wall clock).
	EmittedAtUnixNs uint64 `protobuf:"fixed64,12,opt,name=emitted_at_unix_ns,json=emittedAtUnixNs,proto3" json:"emitted_at_unix_ns,omitempty"`
	// Detector-specific context (window count, room name, last-known posture,
	// etc.) serialised as a JSON string. Free-form by design.
	ContextJson string `protobuf:"bytes,13,opt,name=context_json,json=contextJson,proto3" json:"context_json,omitempty"`
	// Monotonically incremented detector algorithm version.  A bump indicates
	// the semantics of value/baseline/z_score may have changed.  Consumers
	// should use this to filter stale-version signals out of "active" rollups.
	AlgorithmVersion int32 `protobuf:"varint,14,opt,name=algorithm_version,json=algorithmVersion,proto3" json:"algorithm_version,omitempty"`
	// Human-readable algorithm name for clinical documentation.
	AlgorithmName string `protobuf:"bytes,15,opt,name=algorithm_name,json=algorithmName,proto3" json:"algorithm_name,omitempty"`
	// Evidence grade for clinical signal interpretation:
	// clinical_review | observational_study | caregiver_guidance |
	// local_baseline_only | experimental
	EvidenceGrade string `protobuf:"bytes,16,opt,name=evidence_grade,json=evidenceGrade,proto3" json:"evidence_grade,omitempty"`
	// JSON-serialized algorithm specification including thresholds,
	// window sizes, and detector hyperparameters.
	AlgorithmSpecJson string `protobuf:"bytes,17,opt,name=algorithm_spec_json,json=algorithmSpecJson,proto3" json:"algorithm_spec_json,omitempty"`
	// contains filtered or unexported fields
}

DementiaSignal is published to the tracking.signals Redis Stream by the orchestrator's DementiaSignalWorker after each evaluation window. Cognitive Companion's DementiaSignalSubscriber persists each signal and fires a context filter so caregiver rules can react.

func (*DementiaSignal) Descriptor deprecated

func (*DementiaSignal) Descriptor() ([]byte, []int)

Deprecated: Use DementiaSignal.ProtoReflect.Descriptor instead.

func (*DementiaSignal) GetAlgorithmName

func (x *DementiaSignal) GetAlgorithmName() string

func (*DementiaSignal) GetAlgorithmSpecJson

func (x *DementiaSignal) GetAlgorithmSpecJson() string

func (*DementiaSignal) GetAlgorithmVersion

func (x *DementiaSignal) GetAlgorithmVersion() int32

func (*DementiaSignal) GetBaseline

func (x *DementiaSignal) GetBaseline() float32

func (*DementiaSignal) GetContextJson

func (x *DementiaSignal) GetContextJson() string

func (*DementiaSignal) GetEmittedAtUnixNs

func (x *DementiaSignal) GetEmittedAtUnixNs() uint64

func (*DementiaSignal) GetEvidenceGrade

func (x *DementiaSignal) GetEvidenceGrade() string

func (*DementiaSignal) GetHasBaseline

func (x *DementiaSignal) GetHasBaseline() bool

func (*DementiaSignal) GetHasZScore

func (x *DementiaSignal) GetHasZScore() bool

func (*DementiaSignal) GetIdentityId

func (x *DementiaSignal) GetIdentityId() string

func (*DementiaSignal) GetKind

func (x *DementiaSignal) GetKind() DementiaSignalKind

func (*DementiaSignal) GetSeverity

func (x *DementiaSignal) GetSeverity() DementiaSignalSeverity

func (*DementiaSignal) GetSignalId

func (x *DementiaSignal) GetSignalId() string

func (*DementiaSignal) GetValue

func (x *DementiaSignal) GetValue() float32

func (*DementiaSignal) GetWindowEndUnixNs

func (x *DementiaSignal) GetWindowEndUnixNs() uint64

func (*DementiaSignal) GetWindowStartUnixNs

func (x *DementiaSignal) GetWindowStartUnixNs() uint64

func (*DementiaSignal) GetZScore

func (x *DementiaSignal) GetZScore() float32

func (*DementiaSignal) ProtoMessage

func (*DementiaSignal) ProtoMessage()

func (*DementiaSignal) ProtoReflect

func (x *DementiaSignal) ProtoReflect() protoreflect.Message

func (*DementiaSignal) Reset

func (x *DementiaSignal) Reset()

func (*DementiaSignal) String

func (x *DementiaSignal) String() string

type DementiaSignalKind

type DementiaSignalKind int32
const (
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_UNSPECIFIED            DementiaSignalKind = 0
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_PACING                 DementiaSignalKind = 1
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_SUNDOWNING_INDEX       DementiaSignalKind = 2
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_BATHROOM_DWELL_ANOMALY DementiaSignalKind = 3
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_NIGHTTIME_MOVEMENT     DementiaSignalKind = 4
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_STILLNESS_ANOMALY      DementiaSignalKind = 5
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_ABSENCE                DementiaSignalKind = 6
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_FALL_SUSPECTED         DementiaSignalKind = 7
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_GAIT_SLOWING           DementiaSignalKind = 8
	DementiaSignalKind_DEMENTIA_SIGNAL_KIND_AGITATION_INDEX        DementiaSignalKind = 9
)

func (DementiaSignalKind) Descriptor

func (DementiaSignalKind) Enum

func (DementiaSignalKind) EnumDescriptor deprecated

func (DementiaSignalKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use DementiaSignalKind.Descriptor instead.

func (DementiaSignalKind) Number

func (DementiaSignalKind) String

func (x DementiaSignalKind) String() string

func (DementiaSignalKind) Type

type DementiaSignalSeverity

type DementiaSignalSeverity int32
const (
	DementiaSignalSeverity_DEMENTIA_SIGNAL_SEVERITY_UNSPECIFIED DementiaSignalSeverity = 0
	DementiaSignalSeverity_DEMENTIA_SIGNAL_SEVERITY_INFO        DementiaSignalSeverity = 1
	DementiaSignalSeverity_DEMENTIA_SIGNAL_SEVERITY_WARNING     DementiaSignalSeverity = 2
	DementiaSignalSeverity_DEMENTIA_SIGNAL_SEVERITY_EMERGENCY   DementiaSignalSeverity = 3
)

func (DementiaSignalSeverity) Descriptor

func (DementiaSignalSeverity) Enum

func (DementiaSignalSeverity) EnumDescriptor deprecated

func (DementiaSignalSeverity) EnumDescriptor() ([]byte, []int)

Deprecated: Use DementiaSignalSeverity.Descriptor instead.

func (DementiaSignalSeverity) Number

func (DementiaSignalSeverity) String

func (x DementiaSignalSeverity) String() string

func (DementiaSignalSeverity) Type

type Detection

type Detection struct {

	// Unique per-frame identifier for this detection bounding box.
	DetectionId string `protobuf:"bytes,1,opt,name=detection_id,json=detectionId,proto3" json:"detection_id,omitempty"`
	// Bounding box in pixel coordinates (top-left origin).
	Bbox *BoundingBox `protobuf:"bytes,2,opt,name=bbox,proto3" json:"bbox,omitempty"`
	// Embedding vector from the ReID model (L2-normalized, float32).
	// The canonical production model is SOLIDER-REID with 768 dimensions.
	Embedding []float32 `protobuf:"fixed32,3,rep,packed,name=embedding,proto3" json:"embedding,omitempty"`
	// Confidence score from the detection model (0.0 to 1.0).
	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
	// Floor point in the shared floor-plan coordinate system (millimetres).
	// {x_mm=0, y_mm=0, calibrated=false} when the source camera lacks a
	// homography or the projection is degenerate.
	FloorPoint *FloorPoint `protobuf:"bytes,7,opt,name=floor_point,json=floorPoint,proto3" json:"floor_point,omitempty"`
	// RTMPose 17 COCO keypoints (normalised to [0,1] within the bbox crop).
	// Empty when pose estimation is disabled or the crop is too small.
	PoseKeypoints []*PoseKeypoint `protobuf:"bytes,9,rep,name=pose_keypoints,json=poseKeypoints,proto3" json:"pose_keypoints,omitempty"`
	// Last 12 foot-point positions for this tracklet (camera-frame normalised
	// coords [0,1]). Oldest entry first. Empty until the tracklet has history.
	Trail []*TrailPoint `protobuf:"bytes,10,rep,name=trail,proto3" json:"trail,omitempty"`
	// Posterior evidence snapshot from the identity resolver.
	Evidence *PosteriorEvidence `protobuf:"bytes,11,opt,name=evidence,proto3" json:"evidence,omitempty"`
	// Floor position in the shared floor-plan frame, in metres.
	// Both are 0.0 when the source camera is not calibrated.
	FloorX float32 `protobuf:"fixed32,12,opt,name=floor_x,json=floorX,proto3" json:"floor_x,omitempty"`
	FloorY float32 `protobuf:"fixed32,13,opt,name=floor_y,json=floorY,proto3" json:"floor_y,omitempty"`
	// Classified posture: standing | sitting | walking | lying | unknown.
	Posture string `protobuf:"bytes,14,opt,name=posture,proto3" json:"posture,omitempty"`
	// Person Hypothesis ID assigned by the world-coordinate tracker.
	PhId string `protobuf:"bytes,15,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// contains filtered or unexported fields
}

Detection represents one person detected in a single frame.

func (*Detection) Descriptor deprecated

func (*Detection) Descriptor() ([]byte, []int)

Deprecated: Use Detection.ProtoReflect.Descriptor instead.

func (*Detection) GetBbox

func (x *Detection) GetBbox() *BoundingBox

func (*Detection) GetConfidence

func (x *Detection) GetConfidence() float32

func (*Detection) GetDetectionId

func (x *Detection) GetDetectionId() string

func (*Detection) GetEmbedding

func (x *Detection) GetEmbedding() []float32

func (*Detection) GetEvidence

func (x *Detection) GetEvidence() *PosteriorEvidence

func (*Detection) GetFloorPoint

func (x *Detection) GetFloorPoint() *FloorPoint

func (*Detection) GetFloorX

func (x *Detection) GetFloorX() float32

func (*Detection) GetFloorY

func (x *Detection) GetFloorY() float32

func (*Detection) GetPhId

func (x *Detection) GetPhId() string

func (*Detection) GetPoseKeypoints

func (x *Detection) GetPoseKeypoints() []*PoseKeypoint

func (*Detection) GetPosture

func (x *Detection) GetPosture() string

func (*Detection) GetTrail

func (x *Detection) GetTrail() []*TrailPoint

func (*Detection) ProtoMessage

func (*Detection) ProtoMessage()

func (*Detection) ProtoReflect

func (x *Detection) ProtoReflect() protoreflect.Message

func (*Detection) Reset

func (x *Detection) Reset()

func (*Detection) String

func (x *Detection) String() string

type DwellEvent

type DwellEvent struct {

	// Person Hypothesis ID.
	PhId string `protobuf:"bytes,1,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// Committed identity ID (empty when UNKNOWN).
	IdentityId string `protobuf:"bytes,2,opt,name=identity_id,json=identityId,proto3" json:"identity_id,omitempty"`
	// Whether the dwell started or ended.
	EventType DwellEventType `` /* 131-byte string literal not displayed */
	// Room name of the dwell segment.
	RoomName string `protobuf:"bytes,4,opt,name=room_name,json=roomName,proto3" json:"room_name,omitempty"`
	// Wall-clock time of the state change.
	EventTimeUnixNs uint64 `protobuf:"fixed64,5,opt,name=event_time_unix_ns,json=eventTimeUnixNs,proto3" json:"event_time_unix_ns,omitempty"`
	// Duration in seconds (populated only on ended events).
	DurationS int32 `protobuf:"varint,6,opt,name=duration_s,json=durationS,proto3" json:"duration_s,omitempty"`
	// contains filtered or unexported fields
}

DwellEvent is published to tracking.dwell when a dwell segment starts or ends (person enters or leaves a room). One event per threshold crossing; never emitted per frame.

func (*DwellEvent) Descriptor deprecated

func (*DwellEvent) Descriptor() ([]byte, []int)

Deprecated: Use DwellEvent.ProtoReflect.Descriptor instead.

func (*DwellEvent) GetDurationS

func (x *DwellEvent) GetDurationS() int32

func (*DwellEvent) GetEventTimeUnixNs

func (x *DwellEvent) GetEventTimeUnixNs() uint64

func (*DwellEvent) GetEventType

func (x *DwellEvent) GetEventType() DwellEventType

func (*DwellEvent) GetIdentityId

func (x *DwellEvent) GetIdentityId() string

func (*DwellEvent) GetPhId

func (x *DwellEvent) GetPhId() string

func (*DwellEvent) GetRoomName

func (x *DwellEvent) GetRoomName() string

func (*DwellEvent) ProtoMessage

func (*DwellEvent) ProtoMessage()

func (*DwellEvent) ProtoReflect

func (x *DwellEvent) ProtoReflect() protoreflect.Message

func (*DwellEvent) Reset

func (x *DwellEvent) Reset()

func (*DwellEvent) String

func (x *DwellEvent) String() string

type DwellEventType

type DwellEventType int32
const (
	DwellEventType_DWELL_EVENT_TYPE_UNSPECIFIED DwellEventType = 0
	DwellEventType_DWELL_EVENT_TYPE_STARTED     DwellEventType = 1
	DwellEventType_DWELL_EVENT_TYPE_ENDED       DwellEventType = 2
)

func (DwellEventType) Descriptor

func (DwellEventType) Enum

func (x DwellEventType) Enum() *DwellEventType

func (DwellEventType) EnumDescriptor deprecated

func (DwellEventType) EnumDescriptor() ([]byte, []int)

Deprecated: Use DwellEventType.Descriptor instead.

func (DwellEventType) Number

func (DwellEventType) String

func (x DwellEventType) String() string

func (DwellEventType) Type

type FloorPoint

type FloorPoint struct {

	// X coordinate in the shared floor-plan frame, in mm.
	XMm int64 `protobuf:"varint,1,opt,name=x_mm,json=xMm,proto3" json:"x_mm,omitempty"`
	// Y coordinate in the shared floor-plan frame, in mm.
	YMm int64 `protobuf:"varint,2,opt,name=y_mm,json=yMm,proto3" json:"y_mm,omitempty"`
	// Whether the homography was calibrated for the source camera.
	Calibrated bool `protobuf:"varint,3,opt,name=calibrated,proto3" json:"calibrated,omitempty"`
	// contains filtered or unexported fields
}

FloorPoint is a 2D point in the shared floor-plan coordinate system, in millimetres. When calibrated=true the coordinates are consistent across all cameras that share the same floor_plan_id. When calibrated=false both coordinates are zero and must not be used for metric comparisons.

func (*FloorPoint) Descriptor deprecated

func (*FloorPoint) Descriptor() ([]byte, []int)

Deprecated: Use FloorPoint.ProtoReflect.Descriptor instead.

func (*FloorPoint) GetCalibrated

func (x *FloorPoint) GetCalibrated() bool

func (*FloorPoint) GetXMm

func (x *FloorPoint) GetXMm() int64

func (*FloorPoint) GetYMm

func (x *FloorPoint) GetYMm() int64

func (*FloorPoint) ProtoMessage

func (*FloorPoint) ProtoMessage()

func (*FloorPoint) ProtoReflect

func (x *FloorPoint) ProtoReflect() protoreflect.Message

func (*FloorPoint) Reset

func (x *FloorPoint) Reset()

func (*FloorPoint) String

func (x *FloorPoint) String() string

type FrameReady

type FrameReady struct {

	// Which camera stream this frame belongs to.
	CameraId string `protobuf:"bytes,1,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
	// MinIO key where the frame JPEG/PNG is stored.
	MinioKey string `protobuf:"bytes,2,opt,name=minio_key,json=minioKey,proto3" json:"minio_key,omitempty"`
	// Frame index (monotonically increasing per camera).
	FrameIndex int64 `protobuf:"varint,3,opt,name=frame_index,json=frameIndex,proto3" json:"frame_index,omitempty"`
	// Capture timestamp from RTSP source (nanoseconds since Unix epoch).
	CaptureTimeUnixNs uint64 `protobuf:"fixed64,4,opt,name=capture_time_unix_ns,json=captureTimeUnixNs,proto3" json:"capture_time_unix_ns,omitempty"`
	// Wall-clock time when ingress received the frame (nanoseconds).
	ReceivedTimeUnixNs uint64 `protobuf:"fixed64,5,opt,name=received_time_unix_ns,json=receivedTimeUnixNs,proto3" json:"received_time_unix_ns,omitempty"`
	// Frame dimensions.
	Width  int32 `protobuf:"varint,6,opt,name=width,proto3" json:"width,omitempty"`
	Height int32 `protobuf:"varint,7,opt,name=height,proto3" json:"height,omitempty"`
	// Frame rate at which this frame was extracted (0 = all frames).
	SampleFps float32 `protobuf:"fixed32,8,opt,name=sample_fps,json=sampleFps,proto3" json:"sample_fps,omitempty"`
	// contains filtered or unexported fields
}

FrameReady is published to Redis Streams by the rtsp-ingress Go service when a new frame is available for processing. The tracking-orchestrator consumes this from the frame-pipeline stream.

func (*FrameReady) Descriptor deprecated

func (*FrameReady) Descriptor() ([]byte, []int)

Deprecated: Use FrameReady.ProtoReflect.Descriptor instead.

func (*FrameReady) GetCameraId

func (x *FrameReady) GetCameraId() string

func (*FrameReady) GetCaptureTimeUnixNs

func (x *FrameReady) GetCaptureTimeUnixNs() uint64

func (*FrameReady) GetFrameIndex

func (x *FrameReady) GetFrameIndex() int64

func (*FrameReady) GetHeight

func (x *FrameReady) GetHeight() int32

func (*FrameReady) GetMinioKey

func (x *FrameReady) GetMinioKey() string

func (*FrameReady) GetReceivedTimeUnixNs

func (x *FrameReady) GetReceivedTimeUnixNs() uint64

func (*FrameReady) GetSampleFps

func (x *FrameReady) GetSampleFps() float32

func (*FrameReady) GetWidth

func (x *FrameReady) GetWidth() int32

func (*FrameReady) ProtoMessage

func (*FrameReady) ProtoMessage()

func (*FrameReady) ProtoReflect

func (x *FrameReady) ProtoReflect() protoreflect.Message

func (*FrameReady) Reset

func (x *FrameReady) Reset()

func (*FrameReady) String

func (x *FrameReady) String() string

type FrameRef

type FrameRef struct {

	// MinIO object key for the original frame.
	MinioKey string `protobuf:"bytes,1,opt,name=minio_key,json=minioKey,proto3" json:"minio_key,omitempty"`
	// Frame resolution.
	Width  int32 `protobuf:"varint,2,opt,name=width,proto3" json:"width,omitempty"`
	Height int32 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
	// Frame index within the camera stream (monotonically increasing).
	FrameIndex int64 `protobuf:"varint,4,opt,name=frame_index,json=frameIndex,proto3" json:"frame_index,omitempty"`
	// Capture time from the RTSP source (pre-NTP correction).
	CaptureTimeUnixNs uint64 `protobuf:"fixed64,5,opt,name=capture_time_unix_ns,json=captureTimeUnixNs,proto3" json:"capture_time_unix_ns,omitempty"`
	// contains filtered or unexported fields
}

FrameRef points to a frame stored in MinIO without duplicating pixel data.

func (*FrameRef) Descriptor deprecated

func (*FrameRef) Descriptor() ([]byte, []int)

Deprecated: Use FrameRef.ProtoReflect.Descriptor instead.

func (*FrameRef) GetCaptureTimeUnixNs

func (x *FrameRef) GetCaptureTimeUnixNs() uint64

func (*FrameRef) GetFrameIndex

func (x *FrameRef) GetFrameIndex() int64

func (*FrameRef) GetHeight

func (x *FrameRef) GetHeight() int32

func (*FrameRef) GetMinioKey

func (x *FrameRef) GetMinioKey() string

func (*FrameRef) GetWidth

func (x *FrameRef) GetWidth() int32

func (*FrameRef) ProtoMessage

func (*FrameRef) ProtoMessage()

func (*FrameRef) ProtoReflect

func (x *FrameRef) ProtoReflect() protoreflect.Message

func (*FrameRef) Reset

func (x *FrameRef) Reset()

func (*FrameRef) String

func (x *FrameRef) String() string

type FrameResponse

type FrameResponse struct {

	// Correlates to the FrameReady frame_index + camera_id.
	CameraId   string `protobuf:"bytes,1,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
	FrameIndex int64  `protobuf:"varint,2,opt,name=frame_index,json=frameIndex,proto3" json:"frame_index,omitempty"`
	// Whether processing succeeded.
	Success bool `protobuf:"varint,3,opt,name=success,proto3" json:"success,omitempty"`
	// If not success, a brief error code.
	ErrorCode string `protobuf:"bytes,4,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"`
	// Processing latency in microseconds.
	ProcessingLatencyUs int64 `protobuf:"varint,5,opt,name=processing_latency_us,json=processingLatencyUs,proto3" json:"processing_latency_us,omitempty"`
	// Number of detections produced.
	DetectionCount int32 `protobuf:"varint,6,opt,name=detection_count,json=detectionCount,proto3" json:"detection_count,omitempty"`
	// Wall-clock time when processing completed.
	CompletedTimeUnixNs uint64 `protobuf:"fixed64,7,opt,name=completed_time_unix_ns,json=completedTimeUnixNs,proto3" json:"completed_time_unix_ns,omitempty"`
	// contains filtered or unexported fields
}

FrameResponse is published back to Redis Streams by the tracking-orchestrator after processing. The rtsp-ingress may use this for acknowledgment and metrics.

func (*FrameResponse) Descriptor deprecated

func (*FrameResponse) Descriptor() ([]byte, []int)

Deprecated: Use FrameResponse.ProtoReflect.Descriptor instead.

func (*FrameResponse) GetCameraId

func (x *FrameResponse) GetCameraId() string

func (*FrameResponse) GetCompletedTimeUnixNs

func (x *FrameResponse) GetCompletedTimeUnixNs() uint64

func (*FrameResponse) GetDetectionCount

func (x *FrameResponse) GetDetectionCount() int32

func (*FrameResponse) GetErrorCode

func (x *FrameResponse) GetErrorCode() string

func (*FrameResponse) GetFrameIndex

func (x *FrameResponse) GetFrameIndex() int64

func (*FrameResponse) GetProcessingLatencyUs

func (x *FrameResponse) GetProcessingLatencyUs() int64

func (*FrameResponse) GetSuccess

func (x *FrameResponse) GetSuccess() bool

func (*FrameResponse) ProtoMessage

func (*FrameResponse) ProtoMessage()

func (*FrameResponse) ProtoReflect

func (x *FrameResponse) ProtoReflect() protoreflect.Message

func (*FrameResponse) Reset

func (x *FrameResponse) Reset()

func (*FrameResponse) String

func (x *FrameResponse) String() string

type IdentityCandidate

type IdentityCandidate struct {

	// The identity's gallery entry ID.
	IdentityId string `protobuf:"bytes,1,opt,name=identity_id,json=identityId,proto3" json:"identity_id,omitempty"`
	// Display name for the identity.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Posterior probability P(identity | observations).
	Probability float32 `protobuf:"fixed32,3,opt,name=probability,proto3" json:"probability,omitempty"`
	// contains filtered or unexported fields
}

IdentityCandidate is one candidate identity with its posterior probability.

func (*IdentityCandidate) Descriptor deprecated

func (*IdentityCandidate) Descriptor() ([]byte, []int)

Deprecated: Use IdentityCandidate.ProtoReflect.Descriptor instead.

func (*IdentityCandidate) GetDisplayName

func (x *IdentityCandidate) GetDisplayName() string

func (*IdentityCandidate) GetIdentityId

func (x *IdentityCandidate) GetIdentityId() string

func (*IdentityCandidate) GetProbability

func (x *IdentityCandidate) GetProbability() float32

func (*IdentityCandidate) ProtoMessage

func (*IdentityCandidate) ProtoMessage()

func (*IdentityCandidate) ProtoReflect

func (x *IdentityCandidate) ProtoReflect() protoreflect.Message

func (*IdentityCandidate) Reset

func (x *IdentityCandidate) Reset()

func (*IdentityCandidate) String

func (x *IdentityCandidate) String() string

type IdentityRevision

type IdentityRevision struct {

	// The Person Hypothesis whose identity is being revised.
	PhId string `protobuf:"bytes,1,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// Probability distribution over candidate identities.
	// N0: unused by the PH-native revision; kept for wire compatibility.
	Candidates []*IdentityCandidate `protobuf:"bytes,2,rep,name=candidates,proto3" json:"candidates,omitempty"`
	// The MAP (maximum a posteriori) estimate.
	// N0: unused; kept for wire compatibility.
	MapIdentityId string `protobuf:"bytes,3,opt,name=map_identity_id,json=mapIdentityId,proto3" json:"map_identity_id,omitempty"`
	// Entropy of the posterior (measure of uncertainty, in bits).
	// Lower = more certain.
	// N0: unused at this field; posterior_entropy moved into evidence_json.
	PosteriorEntropy float32 `protobuf:"fixed32,4,opt,name=posterior_entropy,json=posteriorEntropy,proto3" json:"posterior_entropy,omitempty"`
	// When this revision was computed.
	RevisionTimeUnixNs uint64 `protobuf:"fixed64,5,opt,name=revision_time_unix_ns,json=revisionTimeUnixNs,proto3" json:"revision_time_unix_ns,omitempty"`
	// Unique ID of this revision. Used for idempotent CC-side rewrites.
	RevisionId string `protobuf:"bytes,6,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
	// Identity before the revision (empty when promoting from UNKNOWN).
	PreviousIdentityId string `protobuf:"bytes,8,opt,name=previous_identity_id,json=previousIdentityId,proto3" json:"previous_identity_id,omitempty"`
	// Identity after the revision (empty when demoting to UNKNOWN).
	NewIdentityId string `protobuf:"bytes,9,opt,name=new_identity_id,json=newIdentityId,proto3" json:"new_identity_id,omitempty"`
	// Human-readable reason: initial_assignment | identity_change |
	// demoted_to_unknown | manual_override | merge.
	Reason string `protobuf:"bytes,10,opt,name=reason,proto3" json:"reason,omitempty"`
	// N0: evidence_json extended with actor, rewritten_rows, observation_count,
	// and evidence_sources in addition to the legacy posterior fields.
	EvidenceJson string `protobuf:"bytes,11,opt,name=evidence_json,json=evidenceJson,proto3" json:"evidence_json,omitempty"`
	// contains filtered or unexported fields
}

IdentityRevision is published to the tracking.revisions Redis Stream when an identity assignment for a Person Hypothesis changes. N0: renamed global_track_id -> ph_id; tracklet_ids reserved.

func (*IdentityRevision) Descriptor deprecated

func (*IdentityRevision) Descriptor() ([]byte, []int)

Deprecated: Use IdentityRevision.ProtoReflect.Descriptor instead.

func (*IdentityRevision) GetCandidates

func (x *IdentityRevision) GetCandidates() []*IdentityCandidate

func (*IdentityRevision) GetEvidenceJson

func (x *IdentityRevision) GetEvidenceJson() string

func (*IdentityRevision) GetMapIdentityId

func (x *IdentityRevision) GetMapIdentityId() string

func (*IdentityRevision) GetNewIdentityId

func (x *IdentityRevision) GetNewIdentityId() string

func (*IdentityRevision) GetPhId

func (x *IdentityRevision) GetPhId() string

func (*IdentityRevision) GetPosteriorEntropy

func (x *IdentityRevision) GetPosteriorEntropy() float32

func (*IdentityRevision) GetPreviousIdentityId

func (x *IdentityRevision) GetPreviousIdentityId() string

func (*IdentityRevision) GetReason

func (x *IdentityRevision) GetReason() string

func (*IdentityRevision) GetRevisionId

func (x *IdentityRevision) GetRevisionId() string

func (*IdentityRevision) GetRevisionTimeUnixNs

func (x *IdentityRevision) GetRevisionTimeUnixNs() uint64

func (*IdentityRevision) ProtoMessage

func (*IdentityRevision) ProtoMessage()

func (*IdentityRevision) ProtoReflect

func (x *IdentityRevision) ProtoReflect() protoreflect.Message

func (*IdentityRevision) Reset

func (x *IdentityRevision) Reset()

func (*IdentityRevision) String

func (x *IdentityRevision) String() string

type IdentitySnapshot

type IdentitySnapshot struct {

	// R3: canonical field name.  Field number 1 is unchanged; binary wire is
	// compatible.  The old name "global_track_id" is reserved to prevent
	// accidental JSON/text-format reuse.
	PhId string `protobuf:"bytes,1,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// The committed identity for this global track (empty when UNKNOWN).
	IdentityId string `protobuf:"bytes,2,opt,name=identity_id,json=identityId,proto3" json:"identity_id,omitempty"`
	// Probability of the top identity from the posterior.
	TopProbability float32 `protobuf:"fixed32,3,opt,name=top_probability,json=topProbability,proto3" json:"top_probability,omitempty"`
	// Probability of the second-best identity from the posterior.
	SecondProbability float32 `protobuf:"fixed32,4,opt,name=second_probability,json=secondProbability,proto3" json:"second_probability,omitempty"`
	// Entropy of the full posterior (bits). Lower = more certain.
	PosteriorEntropy float32 `protobuf:"fixed32,5,opt,name=posterior_entropy,json=posteriorEntropy,proto3" json:"posterior_entropy,omitempty"`
	// Whether direct face evidence (ArcFace) contributed to this decision.
	DirectFaceEvidence bool `protobuf:"varint,6,opt,name=direct_face_evidence,json=directFaceEvidence,proto3" json:"direct_face_evidence,omitempty"`
	// Evidence source summary serialised as JSON:
	// {"sources": {"direct_face": 1, "reid": 3}, "direct_face_confidence": 0.95, ...}
	EvidenceJson string `protobuf:"bytes,7,opt,name=evidence_json,json=evidenceJson,proto3" json:"evidence_json,omitempty"`
	// Exponential moving average of crop-quality scores for this PH (U1/U2).
	// Range [0, 1]; 0.0 means no quality data yet.  Consumed by CC to populate
	// PersonLocationEnvelope.quality without client-side inference (design rule D5).
	MeanQuality float32 `protobuf:"fixed32,8,opt,name=mean_quality,json=meanQuality,proto3" json:"mean_quality,omitempty"`
	// contains filtered or unexported fields
}

IdentitySnapshot is a lightweight per-PH identity state for live display. Unlike IdentityRevision, it is not a standalone stream message — it only appears as a sub-message of TrackingEvent.

func (*IdentitySnapshot) Descriptor deprecated

func (*IdentitySnapshot) Descriptor() ([]byte, []int)

Deprecated: Use IdentitySnapshot.ProtoReflect.Descriptor instead.

func (*IdentitySnapshot) GetDirectFaceEvidence

func (x *IdentitySnapshot) GetDirectFaceEvidence() bool

func (*IdentitySnapshot) GetEvidenceJson

func (x *IdentitySnapshot) GetEvidenceJson() string

func (*IdentitySnapshot) GetIdentityId

func (x *IdentitySnapshot) GetIdentityId() string

func (*IdentitySnapshot) GetMeanQuality

func (x *IdentitySnapshot) GetMeanQuality() float32

func (*IdentitySnapshot) GetPhId

func (x *IdentitySnapshot) GetPhId() string

func (*IdentitySnapshot) GetPosteriorEntropy

func (x *IdentitySnapshot) GetPosteriorEntropy() float32

func (*IdentitySnapshot) GetSecondProbability

func (x *IdentitySnapshot) GetSecondProbability() float32

func (*IdentitySnapshot) GetTopProbability

func (x *IdentitySnapshot) GetTopProbability() float32

func (*IdentitySnapshot) ProtoMessage

func (*IdentitySnapshot) ProtoMessage()

func (*IdentitySnapshot) ProtoReflect

func (x *IdentitySnapshot) ProtoReflect() protoreflect.Message

func (*IdentitySnapshot) Reset

func (x *IdentitySnapshot) Reset()

func (*IdentitySnapshot) String

func (x *IdentitySnapshot) String() string

type PoseKeypoint

type PoseKeypoint struct {
	X     float32 `protobuf:"fixed32,1,opt,name=x,proto3" json:"x,omitempty"`         // horizontal position normalised to bbox crop [0, 1]
	Y     float32 `protobuf:"fixed32,2,opt,name=y,proto3" json:"y,omitempty"`         // vertical position normalised to bbox crop [0, 1]
	Score float32 `protobuf:"fixed32,3,opt,name=score,proto3" json:"score,omitempty"` // visibility confidence [0, 1]
	// contains filtered or unexported fields
}

PoseKeypoint is one of the 17 COCO body keypoints.

func (*PoseKeypoint) Descriptor deprecated

func (*PoseKeypoint) Descriptor() ([]byte, []int)

Deprecated: Use PoseKeypoint.ProtoReflect.Descriptor instead.

func (*PoseKeypoint) GetScore

func (x *PoseKeypoint) GetScore() float32

func (*PoseKeypoint) GetX

func (x *PoseKeypoint) GetX() float32

func (*PoseKeypoint) GetY

func (x *PoseKeypoint) GetY() float32

func (*PoseKeypoint) ProtoMessage

func (*PoseKeypoint) ProtoMessage()

func (*PoseKeypoint) ProtoReflect

func (x *PoseKeypoint) ProtoReflect() protoreflect.Message

func (*PoseKeypoint) Reset

func (x *PoseKeypoint) Reset()

func (*PoseKeypoint) String

func (x *PoseKeypoint) String() string

type PosteriorEvidence

type PosteriorEvidence struct {
	TopProb        float32 `protobuf:"fixed32,1,opt,name=top_prob,json=topProb,proto3" json:"top_prob,omitempty"`                       // P(top identity | observations)
	Top2Prob       float32 `protobuf:"fixed32,2,opt,name=top2_prob,json=top2Prob,proto3" json:"top2_prob,omitempty"`                    // P(second-best identity | observations)
	FaceAnchorUsed bool    `protobuf:"varint,3,opt,name=face_anchor_used,json=faceAnchorUsed,proto3" json:"face_anchor_used,omitempty"` // true when a face anchor drove the commit
	// contains filtered or unexported fields
}

PosteriorEvidence captures the identity resolver's confidence snapshot.

func (*PosteriorEvidence) Descriptor deprecated

func (*PosteriorEvidence) Descriptor() ([]byte, []int)

Deprecated: Use PosteriorEvidence.ProtoReflect.Descriptor instead.

func (*PosteriorEvidence) GetFaceAnchorUsed

func (x *PosteriorEvidence) GetFaceAnchorUsed() bool

func (*PosteriorEvidence) GetTop2Prob

func (x *PosteriorEvidence) GetTop2Prob() float32

func (*PosteriorEvidence) GetTopProb

func (x *PosteriorEvidence) GetTopProb() float32

func (*PosteriorEvidence) ProtoMessage

func (*PosteriorEvidence) ProtoMessage()

func (*PosteriorEvidence) ProtoReflect

func (x *PosteriorEvidence) ProtoReflect() protoreflect.Message

func (*PosteriorEvidence) Reset

func (x *PosteriorEvidence) Reset()

func (*PosteriorEvidence) String

func (x *PosteriorEvidence) String() string

type PresenceEvent

type PresenceEvent struct {

	// Person Hypothesis ID of the person whose presence changed.
	PhId string `protobuf:"bytes,1,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// Committed identity ID (empty when the PH is still UNKNOWN).
	IdentityId string `protobuf:"bytes,2,opt,name=identity_id,json=identityId,proto3" json:"identity_id,omitempty"`
	// Whether the person appeared or disappeared.
	EventType PresenceEventType `` /* 134-byte string literal not displayed */
	// Room where the event occurred (camera-bound room at the time).
	RoomName string `protobuf:"bytes,4,opt,name=room_name,json=roomName,proto3" json:"room_name,omitempty"`
	// Wall-clock time of the state change.
	EventTimeUnixNs uint64 `protobuf:"fixed64,5,opt,name=event_time_unix_ns,json=eventTimeUnixNs,proto3" json:"event_time_unix_ns,omitempty"`
	// contains filtered or unexported fields
}

PresenceEvent is published to tracking.presence when a person appears in or disappears from the home. One event per state transition; never emitted per frame.

func (*PresenceEvent) Descriptor deprecated

func (*PresenceEvent) Descriptor() ([]byte, []int)

Deprecated: Use PresenceEvent.ProtoReflect.Descriptor instead.

func (*PresenceEvent) GetEventTimeUnixNs

func (x *PresenceEvent) GetEventTimeUnixNs() uint64

func (*PresenceEvent) GetEventType

func (x *PresenceEvent) GetEventType() PresenceEventType

func (*PresenceEvent) GetIdentityId

func (x *PresenceEvent) GetIdentityId() string

func (*PresenceEvent) GetPhId

func (x *PresenceEvent) GetPhId() string

func (*PresenceEvent) GetRoomName

func (x *PresenceEvent) GetRoomName() string

func (*PresenceEvent) ProtoMessage

func (*PresenceEvent) ProtoMessage()

func (*PresenceEvent) ProtoReflect

func (x *PresenceEvent) ProtoReflect() protoreflect.Message

func (*PresenceEvent) Reset

func (x *PresenceEvent) Reset()

func (*PresenceEvent) String

func (x *PresenceEvent) String() string

type PresenceEventType

type PresenceEventType int32
const (
	PresenceEventType_PRESENCE_EVENT_TYPE_UNSPECIFIED PresenceEventType = 0
	PresenceEventType_PRESENCE_EVENT_TYPE_APPEARED    PresenceEventType = 1
	PresenceEventType_PRESENCE_EVENT_TYPE_DISAPPEARED PresenceEventType = 2
)

func (PresenceEventType) Descriptor

func (PresenceEventType) Enum

func (PresenceEventType) EnumDescriptor deprecated

func (PresenceEventType) EnumDescriptor() ([]byte, []int)

Deprecated: Use PresenceEventType.Descriptor instead.

func (PresenceEventType) Number

func (PresenceEventType) String

func (x PresenceEventType) String() string

func (PresenceEventType) Type

type SceneSample

type SceneSample struct {

	// Unique keyframe ID (ULID or UUID).
	KeyframeId string `protobuf:"bytes,1,opt,name=keyframe_id,json=keyframeId,proto3" json:"keyframe_id,omitempty"`
	// Originating camera.
	CameraId string `protobuf:"bytes,4,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
	// MinIO object key for the JPEG.
	MinioKey string `protobuf:"bytes,5,opt,name=minio_key,json=minioKey,proto3" json:"minio_key,omitempty"`
	// Capture wall clock in unix nanoseconds.
	CapturedAtUnixNs uint64 `protobuf:"fixed64,6,opt,name=captured_at_unix_ns,json=capturedAtUnixNs,proto3" json:"captured_at_unix_ns,omitempty"`
	// Why this frame was sampled.
	TagReason TagReason `` /* 126-byte string literal not displayed */
	// Annotations envelope (bbox, person_id, posture, activity, confidence)
	// serialised as JSON for forward-compat with future detector schemas.
	AnnotationsJson string `protobuf:"bytes,8,opt,name=annotations_json,json=annotationsJson,proto3" json:"annotations_json,omitempty"`
	// Retention deadline in unix nanoseconds.
	ExpiresAtUnixNs uint64 `protobuf:"fixed64,9,opt,name=expires_at_unix_ns,json=expiresAtUnixNs,proto3" json:"expires_at_unix_ns,omitempty"`
	// Person Hypothesis for the person shown in this sampled frame.
	PhId string `protobuf:"bytes,10,opt,name=ph_id,json=phId,proto3" json:"ph_id,omitempty"`
	// contains filtered or unexported fields
}

SceneSample is published to the scene.samples Redis Stream by the orchestrator's KeyframeSampler. The scene worker (currently in Cognitive Companion as CTSSceneWorker) fetches the JPEG from MinIO and runs scene analysis on tagged frames.

func (*SceneSample) Descriptor deprecated

func (*SceneSample) Descriptor() ([]byte, []int)

Deprecated: Use SceneSample.ProtoReflect.Descriptor instead.

func (*SceneSample) GetAnnotationsJson

func (x *SceneSample) GetAnnotationsJson() string

func (*SceneSample) GetCameraId

func (x *SceneSample) GetCameraId() string

func (*SceneSample) GetCapturedAtUnixNs

func (x *SceneSample) GetCapturedAtUnixNs() uint64

func (*SceneSample) GetExpiresAtUnixNs

func (x *SceneSample) GetExpiresAtUnixNs() uint64

func (*SceneSample) GetKeyframeId

func (x *SceneSample) GetKeyframeId() string

func (*SceneSample) GetMinioKey

func (x *SceneSample) GetMinioKey() string

func (*SceneSample) GetPhId

func (x *SceneSample) GetPhId() string

func (*SceneSample) GetTagReason

func (x *SceneSample) GetTagReason() TagReason

func (*SceneSample) ProtoMessage

func (*SceneSample) ProtoMessage()

func (*SceneSample) ProtoReflect

func (x *SceneSample) ProtoReflect() protoreflect.Message

func (*SceneSample) Reset

func (x *SceneSample) Reset()

func (*SceneSample) String

func (x *SceneSample) String() string

type TagReason

type TagReason int32
const (
	TagReason_TAG_REASON_UNSPECIFIED      TagReason = 0
	TagReason_TAG_REASON_PERIODIC         TagReason = 1
	TagReason_TAG_REASON_IDENTITY_CHANGED TagReason = 2
	TagReason_TAG_REASON_HAZARD           TagReason = 3
	TagReason_TAG_REASON_DWELL_START      TagReason = 4
	TagReason_TAG_REASON_FALL             TagReason = 5
	TagReason_TAG_REASON_DEMENTIA_SIGNAL  TagReason = 6
)

func (TagReason) Descriptor

func (TagReason) Descriptor() protoreflect.EnumDescriptor

func (TagReason) Enum

func (x TagReason) Enum() *TagReason

func (TagReason) EnumDescriptor deprecated

func (TagReason) EnumDescriptor() ([]byte, []int)

Deprecated: Use TagReason.Descriptor instead.

func (TagReason) Number

func (x TagReason) Number() protoreflect.EnumNumber

func (TagReason) String

func (x TagReason) String() string

func (TagReason) Type

type TrackingEvent

type TrackingEvent struct {

	// Identity of the camera stream (matches RTSP ingress config).
	CameraId string `protobuf:"bytes,1,opt,name=camera_id,json=cameraId,proto3" json:"camera_id,omitempty"`
	// Wall-clock time when the event was committed (not when frame arrived).
	// Used as the authoritative timestamp for ordering.
	EventTimeUnixNs uint64 `protobuf:"fixed64,2,opt,name=event_time_unix_ns,json=eventTimeUnixNs,proto3" json:"event_time_unix_ns,omitempty"`
	// Frame-level metadata.
	FrameRef *FrameRef `protobuf:"bytes,3,opt,name=frame_ref,json=frameRef,proto3" json:"frame_ref,omitempty"`
	// One entry per detected person in the frame.
	Detections []*Detection `protobuf:"bytes,4,rep,name=detections,proto3" json:"detections,omitempty"`
	// Identity resolution: for each PH that was matched to a known
	// person, the posterior probability distribution over candidates.
	// DEPRECATED: prefer identity_snapshots (field 8).  This field is kept
	// for one compatibility release and will stop being populated afterward.
	//
	// Deprecated: Marked as deprecated in continuoustracking/v1/tracking.proto.
	IdentityRevisions []*IdentityRevision `protobuf:"bytes,5,rep,name=identity_revisions,json=identityRevisions,proto3" json:"identity_revisions,omitempty"`
	// Resolved room name for the camera at event time. Empty when the camera
	// has no room mapping configured. The CC LocationWriter uses this to
	// open / close PersonLocationHistory rows on room transitions.
	RoomName string `protobuf:"bytes,6,opt,name=room_name,json=roomName,proto3" json:"room_name,omitempty"`
	// Unique event identifier for tracing / audit. UUID4.
	EventId string `protobuf:"bytes,7,opt,name=event_id,json=eventId,proto3" json:"event_id,omitempty"`
	// Identity snapshots: lightweight per-global-track identity state for
	// live display.  Replaces the dual-purpose identity_revisions field (5)
	// which conflated per-frame snapshots with standalone revision messages.
	IdentitySnapshots []*IdentitySnapshot `protobuf:"bytes,8,rep,name=identity_snapshots,json=identitySnapshots,proto3" json:"identity_snapshots,omitempty"`
	// contains filtered or unexported fields
}

TrackingEvent is the core message produced by the tracking-orchestrator after processing a frame. It carries the Bayesian identity posterior, spatial coordinates, and temporal metadata.

func (*TrackingEvent) Descriptor deprecated

func (*TrackingEvent) Descriptor() ([]byte, []int)

Deprecated: Use TrackingEvent.ProtoReflect.Descriptor instead.

func (*TrackingEvent) GetCameraId

func (x *TrackingEvent) GetCameraId() string

func (*TrackingEvent) GetDetections

func (x *TrackingEvent) GetDetections() []*Detection

func (*TrackingEvent) GetEventId

func (x *TrackingEvent) GetEventId() string

func (*TrackingEvent) GetEventTimeUnixNs

func (x *TrackingEvent) GetEventTimeUnixNs() uint64

func (*TrackingEvent) GetFrameRef

func (x *TrackingEvent) GetFrameRef() *FrameRef

func (*TrackingEvent) GetIdentityRevisions deprecated

func (x *TrackingEvent) GetIdentityRevisions() []*IdentityRevision

Deprecated: Marked as deprecated in continuoustracking/v1/tracking.proto.

func (*TrackingEvent) GetIdentitySnapshots

func (x *TrackingEvent) GetIdentitySnapshots() []*IdentitySnapshot

func (*TrackingEvent) GetRoomName

func (x *TrackingEvent) GetRoomName() string

func (*TrackingEvent) ProtoMessage

func (*TrackingEvent) ProtoMessage()

func (*TrackingEvent) ProtoReflect

func (x *TrackingEvent) ProtoReflect() protoreflect.Message

func (*TrackingEvent) Reset

func (x *TrackingEvent) Reset()

func (*TrackingEvent) String

func (x *TrackingEvent) String() string

type TrailPoint

type TrailPoint struct {
	X float32 `protobuf:"fixed32,1,opt,name=x,proto3" json:"x,omitempty"` // normalised horizontal [0, 1]
	Y float32 `protobuf:"fixed32,2,opt,name=y,proto3" json:"y,omitempty"` // normalised vertical [0, 1]
	// contains filtered or unexported fields
}

TrailPoint is a historical foot-point position in camera-frame coords.

func (*TrailPoint) Descriptor deprecated

func (*TrailPoint) Descriptor() ([]byte, []int)

Deprecated: Use TrailPoint.ProtoReflect.Descriptor instead.

func (*TrailPoint) GetX

func (x *TrailPoint) GetX() float32

func (*TrailPoint) GetY

func (x *TrailPoint) GetY() float32

func (*TrailPoint) ProtoMessage

func (*TrailPoint) ProtoMessage()

func (*TrailPoint) ProtoReflect

func (x *TrailPoint) ProtoReflect() protoreflect.Message

func (*TrailPoint) Reset

func (x *TrailPoint) Reset()

func (*TrailPoint) String

func (x *TrailPoint) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL