Source code for lbmmontrlbm.h

/** \file lbmmontrlbm.h
        \brief Ultra Messaging (UM) Monitoring API
        \author David K. Ameiss - Informatica Corporation 
        \version $Id: //UMprod/REL_5_3_6/29West/lbm/src/mon/lbm/lbmmontrlbm.h#2 $
        
        The Ultra Messaging (UM) Monitoring API Description. Included
        are types, constants, and functions related to the API. Contents are
        subject to change.

        All of the documentation and software included in this and any
        other Informatica Corporation Ultra Messaging Releases
        Copyright (C) Informatica Corporation. All rights reserved.
        
        Redistribution and use in source and binary forms, with or without
        modification, are permitted only as covered by the terms of a
        valid software license agreement with Informatica Corporation.
        
        Copyright (C) 2006-2014, Informatica Corporation. All Rights Reserved.
        
        THE SOFTWARE IS PROVIDED "AS IS" AND INFORMATICA DISCLAIMS ALL WARRANTIES 
        EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF 
        NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR 
        PURPOSE.  INFORMATICA DOES NOT WARRANT THAT USE OF THE SOFTWARE WILL BE 
        UNINTERRUPTED OR ERROR-FREE.  INFORMATICA SHALL NOT, UNDER ANY CIRCUMSTANCES, BE 
        LIABLE TO LICENSEE FOR LOST PROFITS, CONSEQUENTIAL, INCIDENTAL, SPECIAL OR 
        INDIRECT DAMAGES ARISING OUT OF OR RELATED TO THIS AGREEMENT OR THE 
        TRANSACTIONS CONTEMPLATED HEREUNDER, EVEN IF INFORMATICA HAS BEEN APPRISED OF 
        THE LIKELIHOOD OF SUCH DAMAGES.
*/

#ifndef LBMMONTRLBM_H
#define LBMMONTRLBM_H

#include <stdlib.h>
#ifdef _WIN32
        #include <winsock2.h>
#endif
#include <lbm/lbmmon.h>

#if defined(__cplusplus)
extern "C" {
#endif /* __cplusplus */

/*! \brief Return a pointer to the LBMMON_TRANSPORT_LBM module structure.

        \return Pointer to LBMMON_TRANSPORT_LBM.
*/
LBMExpDLL const lbmmon_transport_func_t * lbmmon_transport_lbm_module(void);

/*!     \brief Initialize the LBM transport module to send statistics.

        \param TransportClientData A pointer which may be filled in (by this function) with
                a pointer to transport-specific client data.
        \param TransportOptions The TransportOptions argument originally passed to
                lbmmon_sctl_create().
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_initsrc(void * * TransportClientData,
                                                                                   const void * TransportOptions);

/*!     \brief Initialize the LBM transport module to receive statistics.

        \param TransportClientData A pointer which may be filled in (by this function) with
                a pointer to transport-specific client data.
        \param TransportOptions The TransportOptions argument originally passed to
                lbmmon_sctl_create().
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_initrcv(void * * TransportClientData,
                                                                                   const void * TransportOptions);

/*!     \brief Send a statistics packet.

        \param Data The data to be sent.
        \param Length The length of the data.
        \param TransportClientData A pointer to transport-specific client data.
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_send(const char * Data,
                                                                                size_t Length,
                                                                                void * TransportClientData);

/*!     \brief Receive statistics packet data.

        \param Data A pointer to a buffer to receive the packet data.
        \param Length A pointer to a size_t. On entry, it contains the maximum number of bytes
                to receive. On exit, it contains the actual number of bytes received.
        \param TimeoutMS Maximum timeout in milliseconds. If no data is available within
                the timeout value, return.
        \param TransportClientData A pointer to transport-specific client data.
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_receive(char * Data,
                                                                                   size_t * Length,
                                                                                   unsigned int TimeoutMS,
                                                                                   void * TransportClientData);

/*!     \brief Finish LBM transport module source processing.

        \param TransportClientData A pointer to transport-specific client data.
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_src_finish(void * TransportClientData);

/*!     \brief Finish LBM transport module receiver processing.

        \param TransportClientData A pointer to transport-specific client data.
        \return Zero if successful, -1 otherwise.
*/
LBMExpDLL int lbmmon_transport_lbm_rcv_finish(void * TransportClientData);

/*!     \brief Return a messages describing the last error encountered.

        \return A string containing a description of the last error encountered by the module.
*/
LBMExpDLL const char * lbmmon_transport_lbm_errmsg(void);

#if defined(__cplusplus)
}
#endif /* __cplusplus */

#endif


Generated on Thu Mar 6 13:11:13 2014 for LBM API by  doxygen 1.5.2