8 #ifndef OPENDDS_DCPS_TRANSPORT_FRAMEWORK_TRANSPORTINST_H 9 #define OPENDDS_DCPS_TRANSPORT_FRAMEWORK_TRANSPORTINST_H 11 #include <ace/config.h> 12 #if !defined (ACE_LACKS_PRAGMA_ONCE) 28 #include <dds/DdsDcpsInfoUtilsC.h> 29 #include <dds/OpenddsDcpsExtC.h> 67 static const long DEFAULT_DATALINK_RELEASE_DELAY = 10000;
68 static const size_t DEFAULT_DATALINK_CONTROL_CHUNKS = 32u;
129 virtual bool is_reliable()
const = 0;
138 void rtps_relay_only_now(
bool flag);
139 void use_rtps_relay_now(
bool flag);
140 void use_ice_now(
bool flag);
180 drop_messages_ = flag;
186 drop_messages_m_ = m;
192 drop_messages_b_ = b;
195 bool should_drop(
ssize_t length)
const;
200 for (
int i = 0; i < n; ++i) {
201 length += iov[i].iov_len;
203 return should_drop(length);
210 count_messages_ = flag;
216 return count_messages_;
228 void set_port_in_addr_string(
OPENDDS_STRING& addr_str, u_short port_number);
237 void adjust_config_value();
267 #if defined(__ACE_INLINE__)
size_t receive_preallocated_message_blocks_
#define ACE_BEGIN_VERSIONED_NAMESPACE_DECL
#define ACE_GUARD(MUTEX, OBJ, LOCK)
virtual void append_transport_statistics(TransportStatisticsSequence &)
ACE_UINT32 optimum_packet_size_
Optimum size (in bytes) of a packet (packet header + sample(s)).
Base class to hold configuration settings for TransportImpls.
const OPENDDS_STRING name_
virtual void get_last_recv_locator(const GUID_t &, TransportLocator &)
#define OpenDDS_Dcps_Export
const OPENDDS_STRING & name() const
sequence< TransportLocator > TransportLocatorSeq
ACE_Thread_Mutex config_lock_
void drop_messages_b(double b)
size_t receive_preallocated_data_blocks_
size_t queue_initial_pools_
virtual void rtps_relay_address_change()
size_t max_samples_per_packet_
Max number of samples that should ever be in a single packet.
bool thread_per_connection_
const OPENDDS_STRING transport_type_
TimeDuration fragment_reassembly_timeout_
sequence< TransportStatistics > TransportStatisticsSequence
void drop_messages(bool flag)
#define ACE_GUARD_RETURN(MUTEX, OBJ, LOCK, RETURN)
void count_messages(bool flag)
size_t datalink_control_chunks_
#define ACE_END_VERSIONED_NAMESPACE_DECL
ACE_UINT32 max_packet_size_
Max size (in bytes) of a packet (packet header + sample(s))
size_t queue_messages_per_pool_
Mix-in class for DDS entities which directly use the transport layer.
virtual bool requires_cdr_encapsulation() const
Does the transport require a CDR-encapsulated data payload?
long datalink_release_delay_
bool count_messages() const
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
int shutdown(ACE_HANDLE handle, int how)
void drop_messages_m(double m)
The Internal API and Implementation of OpenDDS.
virtual void update_locators(const GUID_t &, const TransportLocatorSeq &)
size_t ConnectionInfoFlags
bool should_drop(const iovec iov[], int n, ssize_t &length) const