def register_Ns3Ipv6Header_methods(root_module, cls):
    cls.add_constructor([param('ns3::Ipv6Header const &', 'arg0')])
    cls.add_constructor([])
    cls.add_method('Deserialize', 'uint32_t', [param('ns3::Buffer::Iterator', 'start')], is_virtual=True)
    cls.add_method('DscpTypeToString', 'std::string', [param('ns3::Ipv6Header::DscpType', 'dscp')], is_const=True)
    cls.add_method('EcnTypeToString', 'std::string', [param('ns3::Ipv6Header::EcnType', 'ecn')], is_const=True)
    cls.add_method('GetDestinationAddress', 'ns3::Ipv6Address', [], is_const=True)
    cls.add_method('GetDscp', 'ns3::Ipv6Header::DscpType', [], is_const=True)
    cls.add_method('GetEcn', 'ns3::Ipv6Header::EcnType', [], is_const=True)
    cls.add_method('GetFlowLabel', 'uint32_t', [], is_const=True)
    cls.add_method('GetHopLimit', 'uint8_t', [], is_const=True)
    cls.add_method('GetInstanceTypeId', 'ns3::TypeId', [], is_const=True, is_virtual=True)
    cls.add_method('GetNextHeader', 'uint8_t', [], is_const=True)
    cls.add_method('GetPayloadLength', 'uint16_t', [], is_const=True)
    cls.add_method('GetSerializedSize', 'uint32_t', [], is_const=True, is_virtual=True)
    cls.add_method('GetSourceAddress', 'ns3::Ipv6Address', [], is_const=True)
    cls.add_method('GetTrafficClass', 'uint8_t', [], is_const=True)
    cls.add_method('GetTypeId', 'ns3::TypeId', [], is_static=True)
    cls.add_method('Print', 'void', [param('std::ostream &', 'os')], is_const=True, is_virtual=True)
    cls.add_method('Serialize', 'void', [param('ns3::Buffer::Iterator', 'start')], is_const=True, is_virtual=True)
    cls.add_method('SetDestinationAddress', 'void', [param('ns3::Ipv6Address', 'dst')])
    cls.add_method('SetDscp', 'void', [param('ns3::Ipv6Header::DscpType', 'dscp')])
    cls.add_method('SetEcn', 'void', [param('ns3::Ipv6Header::EcnType', 'ecn')])
    cls.add_method('SetFlowLabel', 'void', [param('uint32_t', 'flow')])
    cls.add_method('SetHopLimit', 'void', [param('uint8_t', 'limit')])
    cls.add_method('SetNextHeader', 'void', [param('uint8_t', 'next')])
    cls.add_method('SetPayloadLength', 'void', [param('uint16_t', 'len')])
    cls.add_method('SetSourceAddress', 'void', [param('ns3::Ipv6Address', 'src')])
    cls.add_method('SetTrafficClass', 'void', [param('uint8_t', 'traffic')])
    return
def register_Ns3Ipv6Header_methods(root_module, cls):
    cls.add_constructor([param('ns3::Ipv6Header const &', 'arg0')])
    cls.add_constructor([])
    cls.add_method('Deserialize', 'uint32_t', [param('ns3::Buffer::Iterator', 'start')], is_virtual=True)
    cls.add_method('DscpTypeToString', 'std::string', [param('ns3::Ipv6Header::DscpType', 'dscp')], is_const=True)
    cls.add_method('EcnTypeToString', 'std::string', [param('ns3::Ipv6Header::EcnType', 'ecn')], is_const=True)
    cls.add_method('GetDestinationAddress', 'ns3::Ipv6Address', [], is_const=True)
    cls.add_method('GetDscp', 'ns3::Ipv6Header::DscpType', [], is_const=True)
    cls.add_method('GetEcn', 'ns3::Ipv6Header::EcnType', [], is_const=True)
    cls.add_method('GetFlowLabel', 'uint32_t', [], is_const=True)
    cls.add_method('GetHopLimit', 'uint8_t', [], is_const=True)
    cls.add_method('GetInstanceTypeId', 'ns3::TypeId', [], is_const=True, is_virtual=True)
    cls.add_method('GetNextHeader', 'uint8_t', [], is_const=True)
    cls.add_method('GetPayloadLength', 'uint16_t', [], is_const=True)
    cls.add_method('GetSerializedSize', 'uint32_t', [], is_const=True, is_virtual=True)
    cls.add_method('GetSourceAddress', 'ns3::Ipv6Address', [], is_const=True)
    cls.add_method('GetTrafficClass', 'uint8_t', [], is_const=True)
    cls.add_method('GetTypeId', 'ns3::TypeId', [], is_static=True)
    cls.add_method('Print', 'void', [param('std::ostream &', 'os')], is_const=True, is_virtual=True)
    cls.add_method('Serialize', 'void', [param('ns3::Buffer::Iterator', 'start')], is_const=True, is_virtual=True)
    cls.add_method('SetDestinationAddress', 'void', [param('ns3::Ipv6Address', 'dst')])
    cls.add_method('SetDscp', 'void', [param('ns3::Ipv6Header::DscpType', 'dscp')])
    cls.add_method('SetEcn', 'void', [param('ns3::Ipv6Header::EcnType', 'ecn')])
    cls.add_method('SetFlowLabel', 'void', [param('uint32_t', 'flow')])
    cls.add_method('SetHopLimit', 'void', [param('uint8_t', 'limit')])
    cls.add_method('SetNextHeader', 'void', [param('uint8_t', 'next')])
    cls.add_method('SetPayloadLength', 'void', [param('uint16_t', 'len')])
    cls.add_method('SetSourceAddress', 'void', [param('ns3::Ipv6Address', 'src')])
    cls.add_method('SetTrafficClass', 'void', [param('uint8_t', 'traffic')])
    return