Hi Thanassis, as you may know, or not, almost all components, users are used to use in Cinema 4D can be considered as a plugin such as objects (generator, modifier, spline), tags, shaders, materials, etc...
When the developer register this plugin, it has to define some behaviors. For an object its a bit more explicit than for a tag so I take an object as an example.
So for an object, (meaning something that can be displayed and stored in the Object Manager), when the developer register this particular Object plugin it should define some behaviors, is it a generator, is it a modifier, does it need other object to generate data?
This information of these flags can be retrieved from any instance of this plugin with the function GetInfo, which contains all this information under a bitfield.
So all possibles values of GetInfo depend on the plugin type you are currently retrieving the information.
To know the type (if it's a tag, or an object, or a shader, etc...) you can use GetClassification
Note: All possible flags for each plugin type are listed under the register method of this plugin type in the Python Documentation.
I hope this answers your question.