Zweck
Diese Funktion ruft den Wert des Attributs 'namespace' für das angegebene Syntaxelement ab.
Definiert in |
Typ |
Mitglied |
CPI_VFT |
Optional |
iFpElementValue |
Syntax
CciSize cpiElementNamespace(
int* returnCode,
CciElement* targetElement,
const CciChar* value,
CciSize length);
Parameter
- returnCode
- Die Eingabe eines Nullzeigers bedeutet, dass der benutzerdefinierte Knoten nicht für Fehler zuständig sein möchte. Alle Ausnahmebedingungen, die bei der Ausführung dieses Aufrufs ausgegeben werden, werden beim nächsten vorgeschalteten Knoten im Nachrichtenfluss erneut ausgegeben.
Wenn die Eingabe nicht
NULL ist, gibt die Ausgabe den Erfolgsstatus des Aufrufs an. Wenn bei der Ausführung eine Ausnahmebedingung auftritt, wird als Wert für '*returnCode' bei der Ausgabe CCI_EXCEPTION festgelegt. Rufen Sie 'CciGetLastExceptionData' auf, um weitere Informationen zu der Ausnahmebedingung zu erhalten. Wenn der Aufrufende nicht genügend Speicher für den Namespacewert zugeordnet hat, wird als Wert für '*returncode' CCI_BUFFER_TOO_SMALL festgelegt. Mögliche Rückkehrcodes sind:
- CCI_SUCCESS
- CCI_EXCEPTION
- CCI_INV_ELEMENT_OBJECT
- CCI_INV_DATA_POINTER
- CCI_INV_DATA_BUFLEN
- CCI_INV_BUFFER_TOO_SMALL
- targetElement
- Gibt die Adresse des Zielsyntaxelementobjekts an.
- value
- Gibt die Adresse eines Puffers an, in den der Namespacewert des Elements kopiert wird. Eine Zeichenfolge (einschließlich Nullabschlusszeichen), die den Namespaceswert darstellt, wird in diesen Puffer kopiert.
Der Puffer sollte Teil des Speichers sein, der zuvor vom Aufrufenden zugeordnet wurde.
- length
- Die Länge des Puffers (in Zeichen (ChiChars)), der durch den Parameter 'value' angegeben wird.
Rückgabewerte
Bei erfolgreicher Ausführung wird die Anzahl der in den Puffer kopierten Zeichen (CciChars) zurückgegeben.
Wenn der Puffer für den Attributwert nicht groß genug ist, wird als Wert für returnCode CCI_BUFFER_TOO_SMALL festgelegt, und die erforderliche Anzahl der Zeichen (CciChars) wird zurückgegeben.
Beispiel
elementNamespace=(CciChar*)malloc(sizeof(CciChar) * elementNamespaceLength);
elementNamespaceLength = cpiElementNamespace(&rc;,
element,
elementNamespace,
elementNamespaceLength);
if (rc==CCI_BUFFER_TOO_SMALL){
free(elementNamespace);
elementNamespace=(CciChar*)malloc(sizeof(CciChar) * elementNamespaceLength);
elementNamespaceLength = cpiElementNamespace(&rc;,
element,
elementNamespace,
elementNamespaceLength);
}
checkRC(rc);