Merge branch 'master' into merge6
Signed-off-by: Martin Bremmer <martin.bremmer@adlinktech.com>
This commit is contained in:
commit
660d495746
124 changed files with 5049 additions and 1672 deletions
|
@ -747,27 +747,50 @@ dds_create_participant(
|
|||
* @brief Creates a domain with a given configuration
|
||||
*
|
||||
* To explicitly create a domain based on a configuration passed as a string.
|
||||
* Normally, the domain is created implicitly on the first call to
|
||||
* dds_create_particiant based on the configuration specified throught
|
||||
* the environment. This function allows to by-pass this behaviour.
|
||||
*
|
||||
* It will not be created if a domain with the given domain id already exists.
|
||||
* This could have been created implicitly by a dds_create_participant().
|
||||
*
|
||||
* Please be aware that the given domain_id always takes precedence over the
|
||||
* configuration.
|
||||
*
|
||||
* | domain_id | domain id in config | result
|
||||
* +-----------+---------------------+----------
|
||||
* | n | any (or absent) | n, config is used
|
||||
* | n | m == n | n, config is used
|
||||
* | n | m != n | n, config is ignored: default
|
||||
*
|
||||
* Config models:
|
||||
* 1: <CycloneDDS>
|
||||
* <Domain id="X">...</Domain>
|
||||
* <Domain .../>
|
||||
* </CycloneDDS>
|
||||
* where ... is all that can today be set in children of CycloneDDS
|
||||
* with the exception of the id
|
||||
* 2: <CycloneDDS>
|
||||
* <Domain><Id>X</Id></Domain>
|
||||
* ...
|
||||
* </CycloneDDS>
|
||||
* legacy form, domain id must be the first element in the file with
|
||||
* a value (if nothing has been set previously, it a warning is good
|
||||
* enough)
|
||||
*
|
||||
* Using NULL or "" as config will create a domain with default settings.
|
||||
*
|
||||
*
|
||||
* @param[in] domain The domain to be created. DEFAULT_DOMAIN is not allowed.
|
||||
* @param[in] config A configuration string containing file names and/or XML fragments representing the configuration.
|
||||
*
|
||||
* @returns A return code
|
||||
* @returns A valid entity handle or an error code.
|
||||
*
|
||||
* @retval DDS_RETCODE_OK
|
||||
* The domain with the domain identifier has been created from
|
||||
* given configuration string.
|
||||
* @retval DDS_RETCODE_BAD_PARAMETER
|
||||
* Illegal value for domain id or the configfile parameter is NULL.
|
||||
* @retval DDS_PRECONDITION_NOT_MET
|
||||
* @retval DDS_RETCODE_PRECONDITION_NOT_MET
|
||||
* The domain already existed and cannot be created again.
|
||||
* @retval DDS_RETCODE_ERROR
|
||||
* An internal error has occurred.
|
||||
*/
|
||||
DDS_EXPORT dds_return_t
|
||||
DDS_EXPORT dds_entity_t
|
||||
dds_create_domain(const dds_domainid_t domain, const char *config);
|
||||
|
||||
/**
|
||||
|
@ -777,15 +800,10 @@ dds_create_domain(const dds_domainid_t domain, const char *config);
|
|||
* For instance, it will return the Participant that was used when
|
||||
* creating a Publisher (when that Publisher was provided here).
|
||||
*
|
||||
* When a reader or a writer are created with a partition, then a
|
||||
* subscriber or publisher respectively are created implicitly. These
|
||||
* implicit subscribers or publishers will be deleted automatically
|
||||
* when the reader or writer is deleted. However, when this function
|
||||
* returns such an implicit entity, it is from there on out considered
|
||||
* 'explicit'. This means that it isn't deleted automatically anymore.
|
||||
* The application should explicitly call dds_delete on those entities
|
||||
* now (or delete the parent participant which will delete all entities
|
||||
* within its hierarchy).
|
||||
* When a reader or a writer are created with a participant, then a
|
||||
* subscriber or publisher are created implicitly.
|
||||
* This function will return the implicit parent and not the used
|
||||
* participant.
|
||||
*
|
||||
* @param[in] entity Entity from which to get its parent.
|
||||
*
|
||||
|
@ -852,15 +870,10 @@ dds_get_participant(dds_entity_t entity);
|
|||
* When supplying NULL as list and 0 as size, you can use this to acquire
|
||||
* the number of children without having to pre-allocate a list.
|
||||
*
|
||||
* When a reader or a writer are created with a partition, then a
|
||||
* subscriber or publisher respectively are created implicitly. These
|
||||
* implicit subscribers or publishers will be deleted automatically
|
||||
* when the reader or writer is deleted. However, when this function
|
||||
* returns such an implicit entity, it is from there on out considered
|
||||
* 'explicit'. This means that it isn't deleted automatically anymore.
|
||||
* The application should explicitly call dds_delete on those entities
|
||||
* now (or delete the parent participant which will delete all entities
|
||||
* within its hierarchy).
|
||||
* When a reader or a writer are created with a participant, then a
|
||||
* subscriber or publisher are created implicitly.
|
||||
* When used on the participant, this function will return the implicit
|
||||
* subscriber and/or publisher and not the related reader/writer.
|
||||
*
|
||||
* @param[in] entity Entity from which to get its children.
|
||||
* @param[out] children Pre-allocated array to contain the found children.
|
||||
|
@ -869,7 +882,7 @@ dds_get_participant(dds_entity_t entity);
|
|||
* @returns Number of children or an error code.
|
||||
*
|
||||
* @retval >=0
|
||||
* Number of childer found children (can be larger than 'size').
|
||||
* Number of found children (can be larger than 'size').
|
||||
* @retval DDS_RETCODE_ERROR
|
||||
* An internal error has occurred.
|
||||
* @retval DDS_RETCODE_BAD_PARAMETER
|
||||
|
@ -1200,6 +1213,7 @@ dds_wait_for_acks(dds_entity_t publisher_or_writer, dds_duration_t timeout);
|
|||
/**
|
||||
* @brief Creates a new instance of a DDS reader.
|
||||
*
|
||||
* When a participant is used to create a reader, an implicit subscriber is created.
|
||||
* This implicit subscriber will be deleted automatically when the created reader
|
||||
* is deleted.
|
||||
*
|
||||
|
@ -1226,6 +1240,7 @@ dds_create_reader(
|
|||
/**
|
||||
* @brief Creates a new instance of a DDS reader with a custom history cache.
|
||||
*
|
||||
* When a participant is used to create a reader, an implicit subscriber is created.
|
||||
* This implicit subscriber will be deleted automatically when the created reader
|
||||
* is deleted.
|
||||
*
|
||||
|
@ -1273,6 +1288,7 @@ dds_reader_wait_for_historical_data(
|
|||
/**
|
||||
* @brief Creates a new instance of a DDS writer.
|
||||
*
|
||||
* When a participant is used to create a writer, an implicit publisher is created.
|
||||
* This implicit publisher will be deleted automatically when the created writer
|
||||
* is deleted.
|
||||
*
|
||||
|
@ -1696,12 +1712,28 @@ DDS_EXPORT void
|
|||
dds_write_flush(dds_entity_t writer);
|
||||
|
||||
/**
|
||||
* @brief Write a CDR serialized value of a data instance
|
||||
* @brief Write a serialized value of a data instance
|
||||
*
|
||||
* This call causes the writer to write the serialized value that is provided
|
||||
* in the serdata argument.
|
||||
*
|
||||
* @param[in] writer The writer entity.
|
||||
* @param[in] serdata CDR serialized value to be written.
|
||||
* @param[in] serdata Serialized value to be written.
|
||||
*
|
||||
* @returns A dds_return_t indicating success or failure.
|
||||
*
|
||||
* @retval DDS_RETCODE_OK
|
||||
* The writer successfully wrote the serialized value.
|
||||
* @retval DDS_RETCODE_ERROR
|
||||
* An internal error has occurred.
|
||||
* @retval DDS_RETCODE_BAD_PARAMETER
|
||||
* One of the given arguments is not valid.
|
||||
* @retval DDS_RETCODE_ILLEGAL_OPERATION
|
||||
* The operation is invoked on an inappropriate object.
|
||||
* @retval DDS_RETCODE_ALREADY_DELETED
|
||||
* The entity has already been deleted.
|
||||
* @retval DDS_RETCODE_TIMEOUT
|
||||
* The writer failed to write the serialized value reliably within the specified max_blocking_time.
|
||||
*/
|
||||
DDS_EXPORT dds_return_t
|
||||
dds_writecdr(dds_entity_t writer, struct ddsi_serdata *serdata);
|
||||
|
@ -2652,6 +2684,44 @@ dds_take_mask_wl(
|
|||
uint32_t maxs,
|
||||
uint32_t mask);
|
||||
|
||||
/**
|
||||
* @brief Access the collection of serialized data values (of same type) and
|
||||
* sample info from the data reader, readcondition or querycondition.
|
||||
*
|
||||
* This call accesses the serialized data from the data reader, readcondition or
|
||||
* querycondition and makes it available to the application. The serialized data
|
||||
* is made available through \ref ddsi_serdata structures. Once read the data is
|
||||
* removed from the reader and cannot be 'read' or 'taken' again.
|
||||
*
|
||||
* Return value provides information about the number of samples read, which will
|
||||
* be <= maxs. Based on the count, the buffer will contain serialized data to be
|
||||
* read only when valid_data bit in sample info structure is set.
|
||||
* The buffer required for data values, could be allocated explicitly or can
|
||||
* use the memory from data reader to prevent copy. In the latter case, buffer and
|
||||
* sample_info should be returned back, once it is no longer using the data.
|
||||
*
|
||||
* @param[in] reader_or_condition Reader, readcondition or querycondition entity.
|
||||
* @param[out] buf An array of pointers to \ref ddsi_serdata structures that contain
|
||||
* the serialized data. The pointers can be NULL.
|
||||
* @param[in] maxs Maximum number of samples to read.
|
||||
* @param[out] si Pointer to an array of \ref dds_sample_info_t returned for each data value.
|
||||
* @param[in] mask Filter the data based on dds_sample_state_t|dds_view_state_t|dds_instance_state_t.
|
||||
*
|
||||
* @returns A dds_return_t with the number of samples read or an error code.
|
||||
*
|
||||
* @retval >=0
|
||||
* Number of samples read.
|
||||
* @retval DDS_RETCODE_ERROR
|
||||
* An internal error has occurred.
|
||||
* @retval DDS_RETCODE_BAD_PARAMETER
|
||||
* One of the given arguments is not valid.
|
||||
* @retval DDS_RETCODE_ILLEGAL_OPERATION
|
||||
* The operation is invoked on an inappropriate object.
|
||||
* @retval DDS_RETCODE_ALREADY_DELETED
|
||||
* The entity has already been deleted.
|
||||
* @retval DDS_RETCODE_PRECONDITION_NOT_MET
|
||||
* The precondition for this operation is not met.
|
||||
*/
|
||||
DDS_EXPORT dds_return_t
|
||||
dds_takecdr(
|
||||
dds_entity_t reader_or_condition,
|
||||
|
@ -3244,6 +3314,29 @@ dds_get_matched_publication_data (
|
|||
dds_entity_t reader,
|
||||
dds_instance_handle_t ih);
|
||||
|
||||
/**
|
||||
* @brief This operation manually asserts the liveliness of a writer
|
||||
* or domain participant.
|
||||
*
|
||||
* This operation manually asserts the liveliness of a writer
|
||||
* or domain participant. This is used in combination with the Liveliness
|
||||
* QoS policy to indicate that the entity remains active. This operation need
|
||||
* only be used if the liveliness kind in the QoS is either
|
||||
* DDS_LIVELINESS_MANUAL_BY_PARTICIPANT or DDS_LIVELINESS_MANUAL_BY_TOPIC.
|
||||
*
|
||||
* @param[in] entity A domain participant or writer
|
||||
*
|
||||
* @returns A dds_return_t indicating success or failure.
|
||||
*
|
||||
* @retval DDS_RETCODE_OK
|
||||
* The operation was successful.
|
||||
* @retval DDS_RETCODE_ILLEGAL_OPERATION
|
||||
* The operation is invoked on an inappropriate object.
|
||||
*/
|
||||
DDS_EXPORT dds_return_t
|
||||
dds_assert_liveliness (
|
||||
dds_entity_t entity);
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue