I am not sure that I understand what you are looking for. The digital states that a tag can usually have are the system states and the digital states from a particular state set that is defined in the point attributes.
If you want to find out the states a digital tag can have, you access the point attributes, find the digitalset and use this stateset:
PISDK.PIPoint snapPoint = server.PIPoints["CDM158"];
_nvs = snapPoint.PointAttributes.GetAttributes();
object _o = "digitalset";
_nv = _nvs.get_Item(ref _o);
_stateset = server.StateSets[_nv.Value.ToString()];
In addition, all tags an have a state from the SYSTEM digital state set as a value, for example "I/O Timeout"
That's precisely what I wanted, thank you Andreas. Sorry for not being clear, I've only just started learning to use PI and the SDK.
Many thanks again.
I think Andreas might have been influenced by your usage of the NamedValues collection ..
because there actually is a more straightforward way to accomplish the same:
PISDK.PIPoint snapPoint = myServer.PIPoints["CDM158"];
string _stateSet = snapPoint.PointAttributes["digitalset"].Value.ToString();
PISDK.StateSet _stateset = myServer.StateSets[_stateSet];