control-freak-ide/misc/Parameters.md
plastic-hub-dev-node-saturn 538369cff7 latest
2021-05-12 18:35:18 +02:00

100 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Parameters
- first citizen class
- must be serializable
## Types
### CFParameter
#### Operations
Method *CheckClass* Virtual added for Fixed Size parameter support.
Method *GetCFContext* Returns a pointer to the owner CFContext
Method *GetClassID* Returns the Class Identifier for this object.
Method *GetID* Returns the Identifier for this object.
<hr/>
Method *GetMemoryOccupation* Returns the size taken by this object and its data in memory.
#### Owner
Method *GetOwner* Gets the owner of the output parameter.
Virtual *Method* SetOwner Sets the owner of the output parameter.
#### Parameter Type
Method *GetGUID* Gets the GUID of the parameter type.
Method *GetParameterClassID* Gets the Class ID of the parameter type.
Method *GetType* Gets the parameter type.
Method *IsCompatibleWith* Checks whether given parameter is compatible with current parameter type.
Method *SetType* Changes the parameter type.
#### IO
Virtual Method *CopyValue* Copies the content of a parameter to this parameter.
Method *GetDataSize* Gets the size of the data stored by the parameter.
Virtual Method *GetReadDataPtr* Returns a pointer to the data.
Virtual Method *GetStringValue Gets the string representation of the parameter value.
Virtual Method *GetValue* Gets the value of the parameter.
Virtual Method *GetWriteDataPtr* Returns a pointer to the data.
Virtual Method *SetStringValue* Sets the value of the parameter using a string.
Virtual Method *SetValue* Sets the value of the parameter.
### CFParameterIn
Method *GetDirectSource* Returns the direct source of the input parameter.
Method *GetRealSource* Returns the real source of data of the input parameter
Method *GetSharedSource* returns the shared source of the input parameter.
Method *GetType* Returns the type of the input parameter.
Method *GetValue* Copies the input parameter's value into the given buffer.
Method *SetDirectSource* Sets the new direct source for the input parameter.
Method *ShareSourceWith* Shares the CFParameterIn with another one.
### CFParameterOut
Virtual Method *DataChanged* Forces the propagation of the data down the destination chain.
Method *GetDestination* Returns the Nth destination parameter.
Method *GetDestinationCount* Returns number of destination parameters.
Method *GetWriteDataPtr* Returns a pointer to the data.
### CFParameter­Operation
Method *DoOperation* Forces the execution of an operation.
Method *GetInParameter1* Accessing the first input parameter of the operation.
Method *GetInParameter2* Accessing the second input parameter of the operation.
Method *GetInParameterRest* Accessing the rest.
Method *GetOperationGuid* Returns the GUID of the operation.
Method *GetOutParameter* Accessing the output parameter of the operation.
Method *Reconstruct* Reconstructs the operation.