62 lines
1.7 KiB
C++
62 lines
1.7 KiB
C++
/*!
|
|
* (C) Copyright 2003-2015 Awox SA. All rights reserved.
|
|
* This work contains confidential trade secrets of Awox.
|
|
* Use, examination, copying, transfer and disclosure to others
|
|
* are prohibited, except with the express written agreement of Awox.
|
|
*
|
|
* @Author: Awox
|
|
* @Date: 06/10/2014
|
|
*/
|
|
|
|
|
|
/*------------------------------- INCLUDES ----------------------------------*/
|
|
|
|
#include "ubuscpp/UBusObject.h"
|
|
|
|
/*------------------------------- GLOBALS ----------------------------------*/
|
|
|
|
/*--------------------------------- DEFINES ---------------------------------*/
|
|
|
|
|
|
|
|
/*! ----------------------------------------------------------------------------
|
|
* @fn awUBusObject
|
|
*
|
|
* @brief Construct a new awUBusObject, the object type and methods is
|
|
* provided statically using the type Derived
|
|
*
|
|
* @param anObjType object type, be carreful it should not be a temporary !!!
|
|
* @param AnObjName : the name of the object
|
|
* @param anObjID : TO BE DEFINED
|
|
* @param anObjPath : TO BE DEFINED
|
|
*
|
|
* @important : the parameter anObjType should not be a temporary !!!
|
|
*/
|
|
UBusObject::UBusObject (ubus_object_type &anObjType, const char *AnObjName, int anObjID,
|
|
const char *anObjPath)
|
|
{
|
|
name = AnObjName ? strdup (AnObjName) : 0;
|
|
id = anObjID;
|
|
path = anObjPath ? strdup (anObjPath) : 0;
|
|
|
|
type = &anObjType;
|
|
methods = anObjType.methods;
|
|
n_methods = anObjType.n_methods;
|
|
|
|
// nullify last fields
|
|
subscribe_cb = 0;
|
|
has_subscribers = false;
|
|
}
|
|
|
|
|
|
/*! ----------------------------------------------------------------------------
|
|
* @fn ~UBusObject
|
|
*
|
|
* @brief Destructor of the UBusObject
|
|
*/
|
|
UBusObject::~UBusObject (void)
|
|
{
|
|
free ((char*)name);
|
|
free ((char*)path);
|
|
}
|