File:  [Isaki's NoNo m68k/m88k emulator] / nono / host / netdriver_selector.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed Apr 29 17:04:54 2026 UTC (2 months, 3 weeks ago) by root
Branches: MAIN, Isaki
CVS tags: v014, v013, v012, v011, HEAD
nono 0.2.0

//
// nono
// Copyright (C) 2021 nono project
// Licensed under nono-license.txt
//

#pragma once

#include "object.h"
#include "netdriver.h"

class EthernetDevice;

// NetDriver セレクタ
class NetDriverSelector : public Object
{
	using inherited = Object;
 public:
	NetDriverSelector(EthernetDevice *parent_);
	~NetDriverSelector() override;

	NetDriver *InitDriver();

	// コンパイル済みのドライバ名一覧を返す
	static std::vector<std::string> GetDrivers();

 private:
	NetDriver *InitNone();
	NetDriver *InitTap();
	NetDriver *InitBPF();
	NetDriver *InitAFPacket();

	EthernetDevice *parent {};

	std::string errmsg {};
};

extern std::unique_ptr<NetDriverSelector> gNetDriverSelector;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.