> For the complete documentation index, see [llms.txt](https://raia-software-inc.gitbook.io/tacview-2-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://raia-software-inc.gitbook.io/tacview-2-documentation/api-reference/api-reference/telemetry-objects/telemetry-tag-names.md).

# TelemetryTagNames

`TelemetryTagNames` contains the text names used to describe telemetry object types.

These names correspond to the textual tags stored in telemetry data. They are mostly useful when creating, modifying, importing, or exporting telemetry.

Most add-ons should use `TelemetryTags` instead.

## Binary tags vs text tag names

Tacview exposes two forms of tags:

| API                 | Purpose                                                              |
| ------------------- | -------------------------------------------------------------------- |
| `TelemetryTags`     | Binary tag values used to test existing objects efficiently.         |
| `TelemetryTagNames` | Text tag names used when working with telemetry object type strings. |

For normal analysis, filtering, and display logic, use `TelemetryTags`.

For example:

```lua
if ObjectHasAllTags(objectHandle, TelemetryTags.FixedWing) then

	-- This object is a fixed-wing aircraft.

end
```

Use `TelemetryTagNames` only when you need the actual text name of a tag.

## When to use text tag names

Text tag names are useful when your add-on needs to work directly with telemetry object type data.

Typical cases include:

* creating new telemetry objects
* modifying object types in memory
* generating telemetry content
* importing or exporting object type information

Even in these cases, Tacview usually handles telemetry loading and parsing for you.

Do not use text tag names just to check what kind of object something is. Use `ObjectHasAllTags()` or `ObjectHasAnyTag()` with `TelemetryTags` instead.

## Combining text tag names

Telemetry object types can contain several text tags.

The separator is available as `TelemetryTagNamesSeparator`.

```lua
local objectType =
	TelemetryTagNames.Air ..
	TelemetryTagNamesSeparator ..
	TelemetryTagNames.FixedWing
```

This produces the same kind of text tag collection used in telemetry data.

## Available tag names

### Object class

| Name                         | Text value   |
| ---------------------------- | ------------ |
| `TelemetryTagNames.Air`      | `"Air"`      |
| `TelemetryTagNames.Ground`   | `"Ground"`   |
| `TelemetryTagNames.Sea`      | `"Sea"`      |
| `TelemetryTagNames.Space`    | `"Space"`    |
| `TelemetryTagNames.Weapon`   | `"Weapon"`   |
| `TelemetryTagNames.Sensor`   | `"Sensor"`   |
| `TelemetryTagNames.Navaid`   | `"Navaid"`   |
| `TelemetryTagNames.Abstract` | `"Abstract"` |
| `TelemetryTagNames.Misc`     | `"Misc"`     |

### Object attributes

| Name                             | Text value       |
| -------------------------------- | ---------------- |
| `TelemetryTagNames.Static`       | `"Static"`       |
| `TelemetryTagNames.Heavy`        | `"Heavy"`        |
| `TelemetryTagNames.Medium`       | `"Medium"`       |
| `TelemetryTagNames.Light`        | `"Light"`        |
| `TelemetryTagNames.Minor`        | `"Minor"`        |
| `TelemetryTagNames.FixedWing`    | `"FixedWing"`    |
| `TelemetryTagNames.Rotorcraft`   | `"Rotorcraft"`   |
| `TelemetryTagNames.Spacecraft`   | `"Spacecraft"`   |
| `TelemetryTagNames.Armor`        | `"Armor"`        |
| `TelemetryTagNames.AntiAircraft` | `"AntiAircraft"` |
| `TelemetryTagNames.Vehicle`      | `"Vehicle"`      |
| `TelemetryTagNames.Watercraft`   | `"Watercraft"`   |
| `TelemetryTagNames.Human`        | `"Human"`        |
| `TelemetryTagNames.Biologic`     | `"Biologic"`     |
| `TelemetryTagNames.Missile`      | `"Missile"`      |
| `TelemetryTagNames.Rocket`       | `"Rocket"`       |
| `TelemetryTagNames.Bomb`         | `"Bomb"`         |
| `TelemetryTagNames.Torpedo`      | `"Torpedo"`      |
| `TelemetryTagNames.Projectile`   | `"Projectile"`   |
| `TelemetryTagNames.Beam`         | `"Beam"`         |
| `TelemetryTagNames.Decoy`        | `"Decoy"`        |
| `TelemetryTagNames.Building`     | `"Building"`     |
| `TelemetryTagNames.Bullseye`     | `"Bullseye"`     |
| `TelemetryTagNames.Waypoint`     | `"Waypoint"`     |

### Specific object types

| Name                                | Text value          |
| ----------------------------------- | ------------------- |
| `TelemetryTagNames.Tank`            | `"Tank"`            |
| `TelemetryTagNames.Warship`         | `"Warship"`         |
| `TelemetryTagNames.AircraftCarrier` | `"AircraftCarrier"` |
| `TelemetryTagNames.Submarine`       | `"Submarine"`       |
| `TelemetryTagNames.Infantry`        | `"Infantry"`        |
| `TelemetryTagNames.Parachutist`     | `"Parachutist"`     |
| `TelemetryTagNames.Shell`           | `"Shell"`           |
| `TelemetryTagNames.Bullet`          | `"Bullet"`          |
| `TelemetryTagNames.Grenade`         | `"Grenade"`         |
| `TelemetryTagNames.Flare`           | `"Flare"`           |
| `TelemetryTagNames.Chaff`           | `"Chaff"`           |
| `TelemetryTagNames.SmokeGrenade`    | `"SmokeGrenade"`    |
| `TelemetryTagNames.Aerodrome`       | `"Aerodrome"`       |
| `TelemetryTagNames.Container`       | `"Container"`       |
| `TelemetryTagNames.Shrapnel`        | `"Shrapnel"`        |
| `TelemetryTagNames.Explosion`       | `"Explosion"`       |

## Remarks

Text tag names are intended for telemetry data, not for high-performance object filtering.

When reading existing objects, prefer binary tags. They are faster, safer, and avoid string comparison logic in your add-on.

New tags may be added over time. Add-ons should preserve unknown text tags when possible instead of discarding them.

## Requirements

Tacview 2.0.0 or later

## See also

* [TelemetryTags](/tacview-2-documentation/api-reference/api-reference/telemetry-objects/telemetry-tags.md)
* [ObjectHasAllTags()](/tacview-2-documentation/api-reference/api-reference/telemetry-objects/object-has-all-tags.md)
* [ObjectHasAnyTag()](/tacview-2-documentation/api-reference/api-reference/telemetry-objects/object-has-any-tag.md)
