GoWebScan API
GoWebScanWebTask.h
Go to the documentation of this file.
1 /**
2 * @file GoWebScanWebTask.h
3 * @brief Declares a GoWebScanWebTask object.
4 *
5 * @internal
6 * Copyright (C) 2017-2026 by LMI Technologies Inc.
7 * Licensed under the MIT License.
8 * Redistributed files must retain the above copyright notice.
9 */
10 
11 #ifndef GO_WEB_SCAN_WEB_TASK_H
12 #define GO_WEB_SCAN_WEB_TASK_H
13 
18 
19 /**
20 * @class GoWebScanWebTask
21 * @extends kObject
22 * @ingroup GoWebScanSdk-Control
23 * @brief Represents a task for combining outputs from multiple Merge Tasks into a single
24 * GoWebScanSystemMsg object. No additional processing is performed. In Web Mode,
25 * this is the final stage before results are delivered back to the GoWebScanProcess
26 * object. In Detection mode, the output from GoWebScanWebTask is passed to
27 * GoWebScanDetectionTask for additional processing. The task accepts
28 * GoWebScanProfileTileMsg, GoWebScanVisionTileMsg, and GoWebScanTracheidTileMsg
29 * objects and outputs GoWebScanSystemMsg objects.
30 *
31 * Tiles are assembled using the GoWebScanTileCombiner algorithm. Tiles not are
32 * copied when creating a GoWebScanSystemMsg object. The reference count on the
33 * original tiles is incremented when they are added to a GoWebScanSystemMsg, and
34 * decremented when the GoWebScanSystemMsg is freed.
35 */
37 
38 // Forward declaration
40 
41 /**
42 * Constructs a GoWebScanWebTask object.
43 *
44 * @public @memberof GoWebScanWebTask
45 * @param task Receives the constructed GoWebScanWebTask object.
46 * @param process Associated GoWebScanProcess object which will receive the detected result.
47 * @param config System configuration.
48 * @param allocator Memory allocator (or kNULL for default).
49 * @return Operation status.
50 */
51 GoWebScanFx(kStatus) GoWebScanWebTask_Construct(GoWebScanWebTask* task, GoWebScanProcess process, GoWebScanConfig config, kAlloc allocator);
52 
53 /**
54 * Sets the handler for receiving emitted web tiles.
55 *
56 * @public @memberof GoWebScanWebTask
57 * @param task GoWebScanWebTask object.
58 * @param send Callback function
59 * @param context Receiver argument for callback.
60 * @return Operation status.
61 */
63 
64 /**
65 * Adds a message to the processing queue. Dequeues a message at the end of the queue to submit
66 * to the pipe for scheduling if no other job is currently pending.
67 *
68 * @public @memberof GoWebScanWebTask
69 * @param task GoWebScanWebTask object.
70 * @param msg Message to enqueue.
71 * @return Operation status.
72 */
74 
75 /**
76 * Clears the tile combiner algorithm and resets internal variables.
77 *
78 * @public @memberof GoWebScanWebTask
79 * @param task GoWebScanWebTask object.
80 * @return Operation status.
81 */
83 
84 #include <GoWebScanSdk/GoWebScanWebTask.x.h>
85 
86 #endif
Declares the GoWebScanPipeTask class.
Represents a task for processing raw sensor data to produce system web tiles (Web mode) or detected o...
kStatus GoWebScanWebTask_SetReceiver(GoWebScanWebTask task, GoWebScanPipeSendFx send, kPointer context)
Sets the handler for receiving emitted web tiles.
Declares a GoWebScanPipe object.
kStatus(kCall * GoWebScanPipeSendFx)(kPointer context, GoWebScanPipeMsg msg)
Defines the signature of the handler used by tasks to receive a message from the pipe.
Definition: GoWebScanPipe.h:33
kStatus GoWebScanWebTask_Send(GoWebScanWebTask task, GoWebScanPipeMsg msg)
Adds a message to the processing queue.
Essential GoWebScan declarations.
Represents a task for combining outputs from multiple Merge Tasks into a single GoWebScanSystemMsg ob...
kStatus GoWebScanWebTask_Clear(GoWebScanWebTask task)
Clears the tile combiner algorithm and resets internal variables.
kStatus GoWebScanWebTask_Construct(GoWebScanWebTask *task, GoWebScanProcess process, GoWebScanConfig config, kAlloc allocator)
Constructs a GoWebScanWebTask object.
Base class for a msg that can be processed with a GoWebScanPipeTask and submitted to the GoWebScanPip...
Represents a container for system-level parameters which are translated from user parameters set in G...
Declares a GoWebScanConfig object.