ReVisitors CityGML library is implemented in C++. It is based on wxWidgets, an open-source cross platform library. For the XML processing, the XML DOM wxXmlDocument is used. The DOM contains wxXmlNodes.
GML nodes reside in the gml namespace, while CityGML nodes reside in the cgml namespace.
All GML and CityGML nodes inherit from a common gml::_Base node, which includes convinience methods for gml::name, gml::id and gml::description.
The root node of a city model is cgml::CityModel. The objects in a city model inherit from the cgml::_CityObject class. A city object is created through the static cgml::_CityObject::Create method which takes an enumerative cgml::ECityObject as argument. Only some of the enumerated values are currently implemented.