nl:: Inet:: ইন্টারফেস ইটারেটর
#include <src/inet/InetInterface.h>
সিস্টেম নেটওয়ার্ক ইন্টারফেসের তালিকার জন্য পুনরাবৃত্তিকারী।
সারাংশ
সিস্টেম নেটওয়ার্ক ইন্টারফেসের তালিকা পুনরাবৃত্তি করতে এই শ্রেণীর বস্তু ব্যবহার করুন।
এই শ্রেণীর একটি পৃথক উদাহরণের পদ্ধতিগুলি থ্রেড-নিরাপদ নয় ; তবে পৃথক দৃষ্টান্ত একাধিক থ্রেড দ্বারা একযোগে ব্যবহার করা যেতে পারে।
মাল্টি-থ্রেডেড LwIP সিস্টেমে, গ্লোবাল এলডব্লিউআইপি স্টেটে অ্যাক্সেস করা অন্যান্য থ্রেডের তুলনায় দৃষ্টান্তগুলি থ্রেড-নিরাপদ, তবে শর্ত থাকে যে অন্যান্য থ্রেডগুলি নেটিফগুলির তালিকা পরিবর্তন করার সময় LwIP কোর লক ধরে রাখে এবং সেই নেটিফ অবজেক্টটি কখনই ধ্বংস হয় না।
সকেট-ভিত্তিক সিস্টেমে, অন্তর্নিহিত সিস্টেমের ইন্টারফেসে পরিবর্তনের মুখে পুনরাবৃত্তি সবসময় স্থিতিশীল থাকে।
LwIP সিস্টেমে, পুনরুক্তি স্থিতিশীল হয় শুধুমাত্র সেই ক্ষেত্রে যেখানে বর্তমানে নির্বাচিত ইন্টারফেস তালিকা থেকে সরানো হয়, যে ক্ষেত্রে পুনরাবৃত্তি অবিলম্বে শেষ হয়।
কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর | |
---|---|
InterfaceIterator (void) একটি InterfaceIterator অবজেক্ট গঠন করে। | |
~InterfaceIterator (void) একটি InterfaceIterator অবজেক্ট ধ্বংস করে। |
সুরক্ষিত বৈশিষ্ট্য | |
---|---|
mCurIntf | size_t |
mCurNetif | struct netif * |
mIntfArray | struct if_nameindex * |
mIntfFlags | short |
mIntfFlagsCached | bool |
পাবলিক ফাংশন | |
---|---|
GetInterface (void) | InterfaceId GetInterfaceId(void) এর জন্য অবচিত উপনাম |
GetInterfaceId (void) | InterfaceId বর্তমান পুনরাবৃত্তিকারী অবস্থানে নেটওয়ার্ক ইন্টারফেস আইডি প্রদান করে। |
GetInterfaceName (char *nameBuf, size_t nameBufSize) | বর্তমান নেটওয়ার্ক ইন্টারফেসের নাম পান। |
HasBroadcastAddress (void) | bool বর্তমান নেটওয়ার্ক ইন্টারফেসের একটি সম্প্রচার ঠিকানা আছে কিনা তা প্রদান করে। |
HasCurrent (void) | bool পুনরাবৃত্তিকারী একটি ইন্টারফেসে অবস্থিত কিনা পরীক্ষা করুন। |
IsUp (void) | bool বর্তমান নেটওয়ার্ক ইন্টারফেস আপ আছে কিনা তা প্রদান করে। |
Next (void) | bool পরবর্তী নেটওয়ার্ক ইন্টারফেসে পুনরাবৃত্তিকারীকে অগ্রসর করুন। |
SupportsMulticast (void) | bool বর্তমান নেটওয়ার্ক ইন্টারফেস মাল্টিকাস্ট সমর্থন করে কিনা তা প্রদান করে। |
সুরক্ষিত ফাংশন | |
---|---|
GetFlags (void) | short বর্তমান ইন্টারফেসের জন্য ifr_flags মান প্রদান করে। |
সুরক্ষিত বৈশিষ্ট্য
mCurIntf
size_t mCurIntf
mCurNetif
struct netif * mCurNetif
mIntfArray
struct if_nameindex * mIntfArray
mIntfFlags
short mIntfFlags
mIntfFlagsCached
bool mIntfFlagsCached
পাবলিক ফাংশন
GetInterfaceId
InterfaceId GetInterfaceId( void )
বর্তমান পুনরাবৃত্তিকারী অবস্থানে নেটওয়ার্ক ইন্টারফেস আইডি প্রদান করে।
বিস্তারিত | |||||
---|---|---|---|---|---|
রিটার্ন মান |
|
GetInterfaceName
INET_ERROR GetInterfaceName( char *nameBuf, size_t nameBufSize )
বর্তমান নেটওয়ার্ক ইন্টারফেসের নাম পান।
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf.
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
সম্প্রচার ঠিকানা
bool HasBroadcastAddress( void )
বর্তমান নেটওয়ার্ক ইন্টারফেসের একটি সম্প্রচার ঠিকানা আছে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | বর্তমান নেটওয়ার্ক ইন্টারফেসের সম্প্রচার ঠিকানা থাকলে true , না থাকলে false , অথবা যদি তালিকার শেষের বাইরে ইটারেটর থাকে। |
হ্যাসকারেন্ট
bool HasCurrent( void )
পুনরাবৃত্তিকারী একটি ইন্টারফেসে অবস্থিত কিনা পরীক্ষা করুন।
পুনরাবৃত্তিকারী একটি ইন্টারফেস ঠিকানায় অবস্থান করা হয়েছে কিনা তা পরীক্ষা করুন।
বিস্তারিত | |
---|---|
রিটার্নস | ইটারেটর একটি ইন্টারফেসে অবস্থান করা হলে true ; ইন্টারফেস তালিকার শেষের বাইরে অবস্থান করলে false । |
রিটার্নস | true যদি পুনরাবৃত্তিকারী একটি ইন্টারফেস ঠিকানায় অবস্থান করা হয়; ঠিকানা তালিকার শেষের বাইরে অবস্থান করলে false । |
ইন্টারফেস ইটারেটর
InterfaceIterator( void )
একটি InterfaceIterator অবজেক্ট গঠন করে।
প্রথম নেটওয়ার্ক ইন্টারফেসে পুনরাবৃত্তিকারী শুরু করে। কিছু প্ল্যাটফর্মে, এই কনস্ট্রাক্টর ধ্বংসকারী দ্বারা পুনর্ব্যবহৃত সম্পদ বরাদ্দ করতে পারে।
IsUp
bool IsUp( void )
বর্তমান নেটওয়ার্ক ইন্টারফেস আপ আছে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | বর্তমান নেটওয়ার্ক ইন্টারফেস আপ থাকলে true , না থাকলে false বা ইটারেটর তালিকার শেষের বাইরে অবস্থান করলে। |
পরবর্তী
bool Next( void )
পরবর্তী নেটওয়ার্ক ইন্টারফেসে পুনরাবৃত্তিকারীকে অগ্রসর করুন।
Advances the internal iterator to the next network interface or to a position beyond the end of the interface list. On multi-threaded LwIP systems, this method is thread-safe relative to other threads accessing the global LwIP state provided that: 1) the other threads hold the LwIP core lock while mutating the list of netifs; and 2) netif objects themselves are never destroyed. Iteration is stable in the face of changes to the underlying system's interfaces, *except* in the case of LwIP systems when the currently selected interface is removed from the list, which causes iteration to end immediately.
বিস্তারিত | |
---|---|
রিটার্নস | false যদি শেষের বাইরে অগ্রসর হয়, অন্যথায় true । |
মাল্টিকাস্ট সমর্থন করে
bool SupportsMulticast( void )
বর্তমান নেটওয়ার্ক ইন্টারফেস মাল্টিকাস্ট সমর্থন করে কিনা তা প্রদান করে।
বিস্তারিত | |
---|---|
রিটার্নস | বর্তমান নেটওয়ার্ক ইন্টারফেস মাল্টিকাস্ট সমর্থন করলে true , না হলে false , অথবা যদি ইটারেটর তালিকার শেষের বাইরে অবস্থান করে। |
~ ইন্টারফেস ইটারেটর
~InterfaceIterator( void )
একটি InterfaceIterator অবজেক্ট ধ্বংস করে।
কনস্ট্রাক্টর দ্বারা বরাদ্দ করা কোনো সম্পদ পুনর্ব্যবহার করে।
সুরক্ষিত ফাংশন
GetFlags
short GetFlags( void )
বর্তমান ইন্টারফেসের জন্য ifr_flags মান প্রদান করে।