#
# metric names and access macros for photoproc.[ch]
# use the hotproc variants here, and at runtime we
# switch metrics (proc.* or hotproc.*) via pointer
# manipulation.
#
procmetrics {
	# /proc/pid/stat
	hotproc.psinfo.cmd			TASK_GEN_NAME
	hotproc.psinfo.sname			TASK_GEN_STATE
	hotproc.psinfo.ppid			TASK_GEN_PPID
	hotproc.psinfo.minflt			TASK_MEM_MINFLT
	hotproc.psinfo.maj_flt			TASK_MEM_MAJFLT
	hotproc.psinfo.utime			TASK_CPU_UTIME
	hotproc.psinfo.stime			TASK_CPU_STIME
	hotproc.psinfo.priority			TASK_CPU_PRIO
	hotproc.psinfo.nice			TASK_CPU_NICE
	hotproc.psinfo.start_time		TASK_GEN_BTIME
	hotproc.psinfo.vsize			TASK_MEM_VMEM
	hotproc.psinfo.rss			TASK_MEM_RMEM
	hotproc.psinfo.processor		TASK_CPU_CURCPU
	hotproc.psinfo.rt_priority		TASK_CPU_RTPRIO
	hotproc.psinfo.policy			TASK_CPU_POLICY

	# /proc/pid/status
	hotproc.psinfo.threads			TASK_GEN_NTHR
	hotproc.psinfo.tgid			TASK_GEN_TGID
	hotproc.psinfo.pid			TASK_GEN_PID
	hotproc.namespaces.envid		TASK_GEN_ENVID
	hotproc.namespaces.vpid			TASK_GEN_VPID
	hotproc.id.uid				TASK_GEN_RUID
	hotproc.id.euid				TASK_GEN_EUID
	hotproc.id.suid				TASK_GEN_SUID
	hotproc.id.fsuid			TASK_GEN_FSUID
	hotproc.id.gid				TASK_GEN_RGID
	hotproc.id.egid				TASK_GEN_EGID
	hotproc.id.sgid				TASK_GEN_SGID
	hotproc.id.fsgid			TASK_GEN_FSGID
	hotproc.memory.vmdata			TASK_MEM_VDATA
	hotproc.memory.vmstack			TASK_MEM_VSTACK
	hotproc.memory.vmexe			TASK_MEM_VEXEC
	hotproc.memory.vmlib			TASK_MEM_VLIBS
	hotproc.memory.vmswap			TASK_MEM_VSWAP

	# /proc/pid/io
	hotproc.io.read_bytes			TASK_DSK_RSZ
	hotproc.io.write_bytes			TASK_DSK_WSZ
	hotproc.io.cancelled_write_bytes	TASK_DSK_CWSZ

	# getpwuid
	hotproc.id.uid_nm			TASK_GEN_RUIDNM
	hotproc.id.euid_nm			TASK_GEN_EUIDNM
	hotproc.id.suid_nm			TASK_GEN_SUIDNM
	hotproc.id.fsuid_nm			TASK_GEN_FSUIDNM

	# end marker - provides count
	.					TASK_NMETRICS
}
