Input Events: Hash vs. Name and uniqueness question(s)

Still trying to grok how the new SimConnect “Input Events” system is supposed to be used…

So, I’m assuming that for some reason the event names aren’t unique enough to be used on their own, which is why one has to get the “hash” ID of an event before using it. However that still doesn’t really make sense…

If there are two events with the same name returned from EnumerateInputEvents(), how would we even tell which one is which?

Now if Input Events are unique only per model, or sim object, or component, or whatever, seems like it would make sense to query the input events available per that container (eg. like SIMCONNECT_SIMOBJECT_TYPE for Set/RequestDataOnSimObject[Type]()). Ideally after being able to retrieve a list of those containers. Like the drill-down in Dev Mode inspector, basically.

The whole setup seems rather backwards to how most of the rest of SimConnect is set up, where we map our own IDs to vars/events, not the other way around.

Playing around with it so far, seems like I always get the same Hash for any Input Event with the same name, even if it’s from different models. I assume (again) it’s because they share a common template or something like that, but once again it begs the question of why can’t we “just” use the name.

Seems fairly obvious this system is still a work in progress, so maybe this is already in the pipeline, but it would be really nice to get an big-picture overview of how the system is supposed to work overall. The current SDK docs explain the SimConnect functions adequately enough, but not really the overall concept.

Thanks,
-Max

For the overall concept, the XML behaviour docs should be better. Input Event Definitions

1 Like

Thank you, part of my ignorance comes from being much less familiar with the modeling side of things. My primary interest is how to allow users to interact with their sim models externally.

And yes, I’ve read through that quite a few times, and of course studied everything in the Behaviors/InputEvents debug… and it seems like the event names are going to be unique at least per model (though nothing explicitly states that).

At any rate there’s certainly no mention of hashed IDs, which I take to be a SimConnect thing, so basically I want to know how these relate to the actual input event names currently “active” in the sim… and if the name isn’t unique then what’s the point of only having the name returned with the enumerations list.

Thanks again,
-Max