skarg
2f5d6fbaa1
Updated unit tests for objects and services, and corrected some portability problems. Thanks, Sergei! Didn't fix mstp or load control unit test results.
2010-12-27 00:04:38 +00:00
skarg
1c560c27b9
Refactored the DCC code in APDU for clarity. Added DCC check in demo server to prevend COV when DCC is not enabled.
2010-12-22 03:09:42 +00:00
skarg
350736f6bb
Corrected DeviceCommunicationControl (DCC) for DISABLE_INITIATION state, which now allows I-Am in response to Who-Is. Did not add keep out for other initiated services like COV (to do).
2010-12-18 17:30:58 +00:00
skarg
2a0bf4926a
Performed standard indent script indent.sh on project files.
2010-12-15 19:02:40 +00:00
skarg
8f1e8d82cd
Changed Object Table from a global to a local variable and added a Device function to initialize it.
2010-12-13 03:41:55 +00:00
bacpack
47ecaeabaa
To build the Routing demo define BAC_ROUTING in the top Makefile. The value is not important - the symbol has to be defined.
2010-11-25 05:10:01 +00:00
tbrennan3
a595bdb4b5
Resolved more code where we didn't need to define separate BAC_ROUTING functionality, since the npdu_encode_pdu() will do the right thing if our source address is for the gateway (root device), because src->net and/or src->len will be 0.
...
For the important Device_Object_Instance_Number(), will redirect to the Routed_Device_Object_Instance_Number() function if this is a routing build.
This leaves only the Who-Is and Who-Has handlers to be dealt with.
2010-11-24 22:04:02 +00:00
bacpack
502cbcc2e6
1. In device.c, the Object_Table[] is now extern; it has to be defined by the user application (see demos); only the required BACnet objects have to be included.
...
2. Objects' .h files define macro to be used to initialize Object_Table[].
2010-11-13 19:57:29 +00:00
tbrennan3
48411b8dbf
Routing functionality complete, and working. (Have not done extensive testing, though.)
...
For building, made it possible to include or exclude the routing functionality with simple changes in the main Makefile and enables in lib/Makefile and include/config.h
The Device object (device.c and .h) was extended to support the virtually routed Devices, with most of the new functions in new file gw_device.c to replace their simpler cousins in device.c.
2010-10-13 15:59:39 +00:00
skarg
e9249b5b5e
Added test for a decoding problem where the stack is unable to decode something, and retrofitted into WriteProperty for each of the demo objects by returning an Error, Out of Range.
2010-10-12 01:17:50 +00:00
skarg
9569f2c536
Fixed EOL and performed standard indentation.
2010-09-16 22:00:47 +00:00
skarg
b769dcbe1d
Indented.
2010-08-18 00:11:35 +00:00
skarg
6c9ef7211d
Fixed indent script, and indented files.
2010-07-19 23:19:54 +00:00
skarg
8a96963e8b
Removed deprecated property.
2010-06-26 03:53:17 +00:00
petermcs
61bb34d726
2nd pass at changing the error/reject/abort status reporting to improve BTL test compliance. ReadProperty fully done for core and demo objects. Will tackle other services next.
2010-06-07 15:52:33 +00:00
petermcs
04e99f3671
Changes to reduce the number of warnings with Visual C++2008 warning level 4 to a minimum.
2010-05-14 14:21:48 +00:00
skarg
710cfccfef
Indented using indent script.
2010-05-04 21:06:26 +00:00
tbrennan3
c5977b8933
Added some function documentation and a little more support for Structured Views.
2010-04-15 20:45:22 +00:00
petermcs
d78ce26067
Added support for non contiguous object arrays to the device object. This allows, for example, a single table of objects to be used for configuration of the device with the objects of a given type not required to be in a contiguous block.
2010-03-29 21:41:39 +00:00
petermcs
6cc780e562
Changed int apdu_len to bool status in Device_Write_Property as the return value is a bool and the return value for the object write functions is also bool.
2010-03-17 15:03:54 +00:00
tbrennan3
6a97eb5424
Added Doxygen Modules describing the Object Helper Functions (and how they're used) and the Handler-to-Objects interface functions of the Device Object.
...
Two small code corrections in device.c:
a) Fixed the return value of Device_Write_Property() so that a -1 value would also return False.
b) Fixed the string length checked when writing PROP_OBJECT_NAME for the Device object.
2010-03-14 04:34:52 +00:00
tbrennan3
6c799cb847
Documented the function pointer templates for object_functions, as used in device.c
2010-03-02 20:44:46 +00:00
skarg
f5bc326061
Merged duplicate and different BACnet Renitialized Device State enumerations.
2010-02-18 17:25:58 +00:00
petermcs
9c9e4b9603
Changed RR handler to call Device_Objects_RR_Info directly.
...
Removed handler_rr_object_set and associated info.
Simplified parameter passing to rr info functions by passing ptr to BACnet_Read_Range_Data.
2010-02-18 11:12:38 +00:00
skarg
1f9c13d37b
Got rid of the handler-set functions for RP,RPM,WP,RD. Just referencing the device object functions directly.
2010-02-18 03:06:03 +00:00
skarg
cba6197fe3
Fixed compiler warnings.
2010-02-15 20:11:13 +00:00
petermcs
8f421b9bf6
Added multistate input to object list.
...
Added RR_Info function pointer to Object Table.
Refactored some of the Object Table iteration code.
2010-02-15 11:46:35 +00:00
skarg
5c439da7f2
Converted ports/at91sam7s to use demo handlers. Added RPM, WhoHas/I-Have.
2010-02-13 16:15:30 +00:00
skarg
6c1b5b7e68
Decoupled the demo handler from the demo object for ReinitializeDevice service.
2010-02-13 13:38:00 +00:00
skarg
bf0a6ab43d
Changed device object functions list to terminate with normal unsigned value so that embedded compilers that convert enums to unsigned will work correctly.
2010-02-11 04:28:33 +00:00
skarg
f0863c0238
Refactored RP, WP, RPM to reduce coupling with objects for Linux and Win32 ports.
2010-02-10 16:27:31 +00:00
petermcs
a7de276acc
Removed old code from Device_Set_System_Status() so status is only set when valid.
2010-02-08 09:56:17 +00:00
petermcs
a076bca5dc
Device_Set_System_Status() now does some range checking (also has local flag to allow internal and external sources have different levels of control.
...
Simplified write property code using new validation helper functions in h_wp.c. Added location, description and model name to the writable properties.
2010-02-03 22:45:07 +00:00
petermcs
f3806bb158
Fixed error class for NO_SPACE_TO_WRITE_PROPERTY when changing device name so it is for class RESOURCES.
...
Changed Database Revision to uint32_t and now increment it when device name or ID is written (will need to look at other objects to see if they have writable ID's or names).
2010-02-01 13:19:32 +00:00
petermcs
ea5c45b911
Updated time code changes to compile with Visual Studio Express 2008.
2010-01-22 15:07:21 +00:00
skarg
d36c29ff08
"timezone" from time.h may be updated when localtime() is called, and therefore, the timezone value should only be used after the call to localtime() which is called in our Update_Current_Time() function. Thanks, Piotr!
2010-01-15 17:15:30 +00:00
skarg
dfd37774e4
Updated Local Time and Date to show hundredths of seconds. Fixed Daylight_Savings_Status to get updated. Changed Local Time and Date to be static. Thanks Piotr!
2010-01-14 19:20:32 +00:00
skarg
2b519a5570
Cleaned up warnings and errors when compiled with Borland C++ and with GCC.
2009-11-19 16:05:22 +00:00
skarg
9c3f6f0c1c
Corrected DeviceGetRRInfo by adding default case. Added Time/Date for demo device object.
2009-11-13 23:00:33 +00:00
petermcs
b8251f314f
Implemented ReadRange functionality for the device "Device Address Binding" property and modified the ReadRange test app to use this real property for its target.
...
Implemented a framework for allowing the ReadRange handler determine which properties support ReadRange and which varients of ReadRange they support.
2009-11-10 15:37:11 +00:00
skarg
edc7c6c577
Added test for array options on RP and RPM to all object properties that are not arrays.
2009-11-05 15:39:46 +00:00
skarg
c04e69da8c
Fixed EOL, indent.
2009-10-24 17:02:59 +00:00
skarg
6b05ae39b8
Corrected the write of the Device object name for the demo object.
2009-10-07 16:35:50 +00:00
petermcs
17e2d7fc8d
Started on refactoring of address caching.
...
1. Added support for building address binding list for device object
2. Changed table traversal code to use pointers instead of array indexes as this produces much more efficient code on many smaller processors where multiplication is expensive
3. fixed issue where binding requests can be overwritten by first I AM that comes along.
4. Converted multiple state variables in cache entries to single flag bitmap.
2009-10-01 08:14:28 +00:00
skarg
ab1db5296e
Added COV Subscriptions to the RPM lists.
2009-09-11 23:13:20 +00:00
skarg
3de2b92216
Changed device object to conform to other objects RP/RPM/WP service API. Added MSI object.
2009-08-24 13:38:53 +00:00
skarg
a28760bf56
Added init functions to object header files. Finished refactoring the demo read and write property handlers to use function tables.
2009-08-23 03:26:30 +00:00
skarg
3dc3da5735
Changing handlers to register objects so that handlers can remain unchanged. In Progress!
2009-08-22 19:27:18 +00:00
skarg
0c4edb33d9
Fixed up file indent, comments, and eol-type.
2009-05-13 03:46:02 +00:00
skarg
b194e2cd70
SourceForge.net bug ID: 2785704. Added case in demo device object to return the Location property. Corrected comment and value of UTC Offset. Thank you piotrek ( bacpack )!
2009-05-03 11:55:50 +00:00