Added missing function prototype in device.h. Changed file license to MIT as it should have been. (per Bug #3004966). Thanks, Jim Bell!

This commit is contained in:
skarg
2010-05-20 23:33:17 +00:00
parent 1bafe2ed98
commit db2e31b17b
+43 -50
View File
@@ -1,36 +1,27 @@
/*####COPYRIGHTBEGIN#### /**************************************************************************
------------------------------------------- *
Copyright (C) 2005 Steve Karg * Copyright (C) 2005 Steve Karg <skarg@users.sourceforge.net>
*
This program is free software; you can redistribute it and/or * Permission is hereby granted, free of charge, to any person obtaining
modify it under the terms of the GNU General Public License * a copy of this software and associated documentation files (the
as published by the Free Software Foundation; either version 2 * "Software"), to deal in the Software without restriction, including
of the License, or (at your option) any later version. * without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
This program is distributed in the hope that it will be useful, * permit persons to whom the Software is furnished to do so, subject to
but WITHOUT ANY WARRANTY; without even the implied warranty of * the following conditions:
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
GNU General Public License for more details. * The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
You should have received a copy of the GNU General Public License *
along with this program; if not, write to: * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
The Free Software Foundation, Inc. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
59 Temple Place - Suite 330 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
Boston, MA 02111-1307, USA. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
As a special exception, if other files instantiate templates or * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
use macros or inline functions from this file, or you compile * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
this file and link it with other works to produce a work based *
on this file, this file does not by itself cause the resulting *********************************************************************/
work to be covered by the GNU General Public License. However
the source code for this file must still be made available in
accordance with section (3) of the GNU General Public License.
This exception does not invalidate any other reasons why a work
based on this file might be covered by the GNU General Public
License.
-------------------------------------------
####COPYRIGHTEND####*/
/** @file device.h Defines functions for handling all BACnet objects belonging /** @file device.h Defines functions for handling all BACnet objects belonging
* to a BACnet device, as well as Device-specific properties. */ * to a BACnet device, as well as Device-specific properties. */
@@ -48,15 +39,15 @@
#include "rpm.h" #include "rpm.h"
#include "readrange.h" #include "readrange.h"
/** Called so a BACnet object can perform any necessary initialization. /** Called so a BACnet object can perform any necessary initialization.
* @ingroup ObjHelpers * @ingroup ObjHelpers
*/ */
typedef void ( typedef void (
*object_init_function) ( *object_init_function) (
void); void);
/** Counts the number of objects of this type. /** Counts the number of objects of this type.
* @ingroup ObjHelpers * @ingroup ObjHelpers
* @return Count of implemented objects of this type. * @return Count of implemented objects of this type.
*/ */
typedef unsigned ( typedef unsigned (
@@ -64,7 +55,7 @@ typedef unsigned (
void); void);
/** Maps an object index position to its corresponding BACnet object instance number. /** Maps an object index position to its corresponding BACnet object instance number.
* @ingroup ObjHelpers * @ingroup ObjHelpers
* @param index [in] The index of the object, in the array of objects of its type. * @param index [in] The index of the object, in the array of objects of its type.
* @return The BACnet object instance number to be used in a BACNET_OBJECT_ID. * @return The BACnet object instance number to be used in a BACNET_OBJECT_ID.
*/ */
@@ -74,7 +65,7 @@ typedef uint32_t(
unsigned index); unsigned index);
/** Provides the BACnet Object_Name for a given object instance of this type. /** Provides the BACnet Object_Name for a given object instance of this type.
* @ingroup ObjHelpers * @ingroup ObjHelpers
* @param [in] The object instance number to be looked up. * @param [in] The object instance number to be looked up.
* @return Pointer to a string containing the unique Object_Name. This string * @return Pointer to a string containing the unique Object_Name. This string
* is temporary and should be copied upon the return. It is * is temporary and should be copied upon the return. It is
@@ -87,7 +78,7 @@ typedef char *(
/** Look in the table of objects of this type, and see if this is a valid /** Look in the table of objects of this type, and see if this is a valid
* instance number. * instance number.
* @ingroup ObjHelpers * @ingroup ObjHelpers
* @param [in] The object instance number to be looked up. * @param [in] The object instance number to be looked up.
* @return True if the object instance refers to a valid object of this type. * @return True if the object instance refers to a valid object of this type.
*/ */
@@ -95,11 +86,11 @@ typedef bool(
*object_valid_instance_function) ( *object_valid_instance_function) (
uint32_t object_instance); uint32_t object_instance);
/** Helper function to step through an array of objects and find either the /** Helper function to step through an array of objects and find either the
* first one or the next one of a given type. Used to step through an array * first one or the next one of a given type. Used to step through an array
* of objects which is not necessarily contiguious for each type i.e. the * of objects which is not necessarily contiguious for each type i.e. the
* index for the 'n'th object of a given type is not necessarily 'n'. * index for the 'n'th object of a given type is not necessarily 'n'.
* @ingroup ObjHelpers * @ingroup ObjHelpers
* @param [in] The index of the current object or a value of ~0 to indicate * @param [in] The index of the current object or a value of ~0 to indicate
* start at the beginning. * start at the beginning.
* @return The index of the next object of the required type or ~0 (all bits * @return The index of the next object of the required type or ~0 (all bits
@@ -165,6 +156,8 @@ extern "C" {
uint16_t Device_Vendor_Identifier( uint16_t Device_Vendor_Identifier(
void); void);
void Device_Set_Vendor_Identifier(
uint16_t vendor_id);
const char *Device_Model_Name( const char *Device_Model_Name(
void); void);
@@ -236,7 +229,7 @@ extern "C" {
} }
#endif /* __cplusplus */ #endif /* __cplusplus */
/** @defgroup ObjFrmwk Object Framework /** @defgroup ObjFrmwk Object Framework
* The modules in this section describe the BACnet-stack's framework for * The modules in this section describe the BACnet-stack's framework for
* BACnet-defined Objects (Device, Analog Input, etc). There are two submodules * BACnet-defined Objects (Device, Analog Input, etc). There are two submodules
* to describe this arrangement: * to describe this arrangement:
* - The "object helper functions" which provide C++-like common functionality * - The "object helper functions" which provide C++-like common functionality
@@ -245,22 +238,22 @@ extern "C" {
* specifically the handlers, which are mediated through function calls to * specifically the handlers, which are mediated through function calls to
* the Device object. * the Device object.
*//** @defgroup ObjHelpers Object Helper Functions *//** @defgroup ObjHelpers Object Helper Functions
* @ingroup ObjFrmwk * @ingroup ObjFrmwk
* This section describes the function templates for the helper functions that * This section describes the function templates for the helper functions that
* provide common object support. * provide common object support.
*//** @defgroup ObjIntf Handler-to-Object Interface Functions *//** @defgroup ObjIntf Handler-to-Object Interface Functions
* @ingroup ObjFrmwk * @ingroup ObjFrmwk
* This section describes the fairly limited set of functions that link the * This section describes the fairly limited set of functions that link the
* BAC-stack handlers to the BACnet Object instances. All of these calls are * BAC-stack handlers to the BACnet Object instances. All of these calls are
* situated in the Device Object, which "knows" how to reach its child Objects. * situated in the Device Object, which "knows" how to reach its child Objects.
* *
* Most of these calls have a common operation: * Most of these calls have a common operation:
* -# Call Device_Objects_Find_Functions( for the desired Object_Type ) * -# Call Device_Objects_Find_Functions( for the desired Object_Type )
* - Gets a pointer to the object_functions for this Type of Object. * - Gets a pointer to the object_functions for this Type of Object.
* -# Call the Object's Object_Valid_Instance( for the desired object_instance ) * -# Call the Object's Object_Valid_Instance( for the desired object_instance )
* to make sure there is such an instance. * to make sure there is such an instance.
* -# Call the Object helper function needed by the handler, * -# Call the Object helper function needed by the handler,
* eg Object_Read_Property() for the RP handler. * eg Object_Read_Property() for the RP handler.
* *
*/ */
#endif #endif