[API](/solutions/geotoolkit/geotoolkit_js/apis/readme) / [geotoolkit](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit) / [welllog](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog) / [widgets](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#widgets) / [data](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#data) / [CurveDataObject](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#curvedataobject) / CurveDataObject

# Class: CurveDataObject

[data](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#data).[CurveDataObject](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.welllog#curvedataobject).CurveDataObject

Define abstract curve data object which provides samples and indices together

**`Deprecated`**

since 4.0

## Hierarchy

- [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)
↳ **`CurveDataObject`**


## Table of contents

Constructors
- [new CurveDataObject(options)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject.md#new curvedataobject(options))


Methods
| [addChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#addchild) | [addProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#addproperties) | [clearChildren](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#clearchildren) |
|  --- | --- | --- |
| [clone](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#clone) | [copyConstructor](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#copyconstructor) | [dispose](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#dispose) |
| [getChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getchild) | [getChildren](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getchildren) | [getChildrenCount](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getchildrencount) |
| [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getclassname) | [getData](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getdata) | [getName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getname) |
| [getParent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getparent) | [getProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getproperties) | [getProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getproperty) |
| [getType](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#gettype) | [getUri](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#geturi) | [hasEventListener](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#haseventlistener) |
| [hasProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#hasproperty) | [indexOfChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#indexofchild) | [insertChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#insertchild) |
| [isDisposed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#isdisposed) | [isSilent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#issilent) | [notify](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#notify) |
| [off](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#off) | [on](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#on) | [onPropertyChanged](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#onpropertychanged) |
| [query](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#query) | [removeChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#removechild) | [set](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#set) |
| [setName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#setname) | [setParent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#setparent) | [setProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#setproperties) |
| [setProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#setproperty) | [setSilent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#setsilent) | [setType](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#settype) |
| [setUri](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#seturi) | [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject#getclassname-1) |


Css Properties
| Name  | Type  | Description |
|  --- | --- | --- |
| `name` | `string` | Name |
| `type` | `string` | Type |
| `uri` | `string` | Unique resource identifier |


## Contents

Constructors
#### new CurveDataObject(options)

• **new CurveDataObject**(`options?`)

#### Parameters

| Name  | Type  |
|  --- | --- |
| `Optional` `options` | [`Options`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#options) |


#### Overrides

DataObject.constructor

Methods
#### addChild

▸ **addChild**(`data`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Add a child object

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `data` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)[] | the child data to be added |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[addChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#addchild)

#### addProperties

▸ **addProperties**(`properties`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Add additional properties

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `properties` | `Record`<`string`, `any`&gt; | additional properties of the dataobject |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[addProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#addproperties)

#### clearChildren

▸ **clearChildren**(): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Remove all child data

#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[clearChildren](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#clearchildren)

#### clone

▸ **clone**(`copyData?`): [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

All subclasses should override copyConstructor or provide custom implementation for this method

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `copyData` | `boolean` | flag to copy data |


#### Returns

[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

clone

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[clone](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#clone)

#### copyConstructor

▸ `Protected` **copyConstructor**(`src`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Copy constructor function.<br>
Function used as part of the cloning mechanism.<br>
Implementations should copy the given instance state to this instance.<br>

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `src` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | Source to copy from |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[copyConstructor](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#copyconstructor)

#### dispose

▸ **dispose**(): `void`

Dispose data object and all children. Clear all listeners

#### Returns

`void`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[dispose](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#dispose)

#### getChild

▸ **getChild**(`i`): [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

Return data by index

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `i` | `number` | index of the data |


#### Returns

[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

child

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getchild)

#### getChildren

▸ **getChildren**(`filter?`): [`Iterator`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.iterator.iterator)<[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)&gt;

Return iterator by child data objects

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `filter` | (`data`: [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)) => `boolean` | a filter function. Returns all child data objects if the value is null. |


#### Returns

[`Iterator`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.util.iterator.iterator)<[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)&gt;

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getChildren](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getchildren)

#### getChildrenCount

▸ **getChildrenCount**(): `number`

Return number of child data

#### Returns

`number`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getChildrenCount](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getchildrencount)

#### getClassName

▸ **getClassName**(): `string`

#### Returns

`string`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getclassname)

#### getData

▸ **getData**(`options`, `callback`): `void`

Request load data

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `options` | `any` | additional parameters of curve data passed to callback function |
| `callback` | (`arg`: `number`[]) => `void` | function called to request data |


#### Returns

`void`

#### getName

▸ **getName**(): `string`

Returns data object name

#### Returns

`string`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getname)

#### getParent

▸ **getParent**(): [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

Gets parent data item

#### Returns

[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getParent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getparent)

#### getProperties

▸ **getProperties**(): [`OptionsOut`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#optionsout)

Gets all the properties pertaining to this object

#### Returns

[`OptionsOut`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#optionsout)

JSON options object

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getproperties)

#### getProperty

▸ **getProperty**(`name`): `any`

Gets property by name

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `name` | `string` | property name |


#### Returns

`any`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getproperty)

#### getType

▸ **getType**(): `string`

Returns data type

#### Returns

`string`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getType](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#gettype)

#### getUri

▸ **getUri**(): `string`

Returns unique resource identifier

#### Returns

`string`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getUri](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#geturi)

#### hasEventListener

▸ **hasEventListener**(`type`, `callback?`): `boolean`

Check if a list of event listeners for this type contains this listener

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `type` | `string` | type of event or property |
| `Optional` `callback` | `Function` | to be called, if null, check if any callback is registered |


#### Returns

`boolean`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[hasEventListener](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#haseventlistener)

#### hasProperty

▸ **hasProperty**(`name`): `boolean`

Returns whether data object contains specific property

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `name` | `string` | property name |


#### Returns

`boolean`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[hasProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#hasproperty)

#### indexOfChild

▸ **indexOfChild**(`data`): `number`

Return index of child data
( index of the specified child or -1 if data is not found)

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `data` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | data object to check index |


#### Returns

`number`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[indexOfChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#indexofchild)

#### insertChild

▸ **insertChild**(`index`, `item`, `silent?`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Insert item by index

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `index` | `number` | specified index |
| `item` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | node |
| `Optional` `silent` | `boolean` | will not fire any events if true |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[insertChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#insertchild)

#### isDisposed

▸ **isDisposed**(): `boolean`

Returns whether this object has been disposed

#### Returns

`boolean`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[isDisposed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#isdisposed)

#### isSilent

▸ **isSilent**(): `boolean`

Return true if the event dispatcher doesn't notify any events

#### Returns

`boolean`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[isSilent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#issilent)

#### notify

▸ **notify**<`E`&gt;(`type`, `source`, `args?`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Notify listeners

#### Type parameters

| Name | Type |
|  --- | --- |
| `E` | extends `string` |


#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `type` | `E` | event types |
| `source` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | of the event |
| `Optional` `args` | [`EventMap`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#eventmap)[`E`] | arguments of the event |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[notify](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#notify)

#### off

▸ **off**<`E`&gt;(`type?`, `callback?`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Detach listener on event.
Calling .off() with no arguments removes all attached listeners.
Calling .off(type) with no callback removes all attached listeners for specific type.

#### Type parameters

| Name | Type |
|  --- | --- |
| `E` | extends `string` |


#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `type` | `E` | type of the event |
| `Optional` `callback` | (`eventType`: `E`, `sender`: [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject), `args`: [`EventMap`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#eventmap)[`E`]) => `void` | function to be called |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[off](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#off)

#### on

▸ **on**<`E`&gt;(`type`, `callback`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Attach listener on event that will be called whenever the specified event is delivered to the target
<p>
If the callback function is already in the list of event listeners for this target,
the function is not added a second time.
</p>
<p>
If a particular anonymous function is in the list of event listeners registered for a
certain target, and then later in the code, an identical anonymous function is given
in an "on" call, the second function will also be added to the list of
event listeners for that target.
</p>

#### Type parameters

| Name | Type |
|  --- | --- |
| `E` | extends `string` |


#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `type` | `E` | type of event or property |
| `callback` | (`eventType`: `E`, `sender`: [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject), `args`: [`EventMap`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#eventmap)[`E`]) => `void` | to be called |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[on](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#on)

#### onPropertyChanged

▸ **onPropertyChanged**(`prop`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

This method is called if property bag is changed using setProperty method

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `prop` | `Object` | property |
| `prop.name` | `string` | - 
 |
| `prop.value` | `any` | - 
 |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[onPropertyChanged](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#onpropertychanged)

#### query

▸ **query**(): [`QueryBuilder`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.selection.querybuilder.querybuilder)<`any`&gt;

Query data item and child items by different conditions

**`Example`**

```ts
// Select by function
import {DataObject} from '@int/geotoolkit/data/DataObject';

const dataobject = new DataObject({'name': 'test', 'uri': 'testuri', 'type': 'testtype'});
const item1 = new DataObject({'name': 'item1', 'uri': 'item1', 'type': 'test'});
const item2 = new DataObject({'name': 'item2', 'uri': 'item2', 'type': 'test'});
dataobject.addChild(&#91;item1, item2&#93;);
const item5 = new DataObject({'name': 'item5', 'uri': 'item5', 'type': 'test'});
item2.addChild(item5);
let founditem = null;
dataobject.query()
.where( (item: DataObject) =&gt; item.getParent() === dataobject)
.where( (item: DataObject) =&gt; item.getUri() === 'item2')
.select((item: DataObject) =&gt; {
founditem = item;
});
```

**`Example`**

```ts
// Select by expression
dataobject.query()
.where( 'item =&gt; uri(item) == "item5"')
.select((item: DataObject) =&gt; {
founditem = item;
});
```

#### Returns

[`QueryBuilder`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.selection.querybuilder.querybuilder)<`any`&gt;

query object which has methods 'where' tp specify conditions, 'select' to run query,
'selectToArray' select results to array
Expressions syntax:
"item => expression", where expression:

- logical and arithmetic operators
- embedded functions:
name(item) - gets name of the data object
url(item) - gets url of the data object
type(item) - gets type of the data object


#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[query](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#query)

#### removeChild

▸ **removeChild**(`data`, `silent?`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Remove child data object

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `data` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | data object to be removed |
| `Optional` `silent` | `boolean` | will not fire any events if true |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[removeChild](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#removechild)

#### set

▸ **set**(`index`, `item`): [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

Sets item by index

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `index` | `number` | index of the item |
| `item` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | node |


#### Returns

[`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject)

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[set](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#set)

#### setName

▸ **setName**(`name`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets data object name

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `name` | `string` | data object name |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#setname)

#### setParent

▸ **setParent**(`parent`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets parent data item

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `parent` | [`DataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject) | parent data item |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setParent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#setparent)

#### setProperties

▸ **setProperties**(`properties?`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets all the properties pertaining to this object

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `properties` | [`Options`](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.data#dataobject#options) | JSON options object |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setProperties](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#setproperties)

#### setProperty

▸ **setProperty**(`name`, `value`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets property by name

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `name` | `string` | property name |
| `value` | `any` | property value |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setProperty](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#setproperty)

#### setSilent

▸ **setSilent**(`bool`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Set silent mode

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `bool` | `boolean` | flag to enable silent mode |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setSilent](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#setsilent)

#### setType

▸ **setType**(`type`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets data object type

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `type` | `string` | data type |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setType](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#settype)

#### setUri

▸ **setUri**(`uri`): [`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

Sets unique resource identifier

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `uri` | `string` | unique identifier |


#### Returns

[`CurveDataObject`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.welllog.widgets-4.data-5.curvedataobject.curvedataobject)

this

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[setUri](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#seturi)

#### getClassName

▸ `Static` **getClassName**(): `string`

#### Returns

`string`

#### Inherited from

[DataObject](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject).[getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.data.dataobject.dataobject#getclassname-1)