[#BaseSignatureCreator]
= BaseSignatureCreator
:mrdocs:

Interface for signature creators&period;

== Synopsis

Declared in `&lt;script&sol;sign&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class BaseSignatureCreator;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BaseSignatureCreator/2destructor.adoc[`&#126;BaseSignatureCreator`] [.small]#[destructor]# [.small]#[virtual]#
| Destroy the signature creator&period;
| xref:BaseSignatureCreator/Checker.adoc[`Checker`]  [.small]#[virtual]#
| Access the signature checker paired with this creator&period;
| xref:BaseSignatureCreator/CreateMuSig2AggregateSig.adoc[`CreateMuSig2AggregateSig`]  [.small]#[virtual]#
| Aggregate MuSig2 partial signatures into a final signature&period;
| xref:BaseSignatureCreator/CreateMuSig2Nonce.adoc[`CreateMuSig2Nonce`]  [.small]#[virtual]#
| Create a MuSig2 public nonce for the given participant&period;
| xref:BaseSignatureCreator/CreateMuSig2PartialSig.adoc[`CreateMuSig2PartialSig`]  [.small]#[virtual]#
| Create this participant&apos;s MuSig2 partial signature&period;
| xref:BaseSignatureCreator/CreateSchnorrSig.adoc[`CreateSchnorrSig`]  [.small]#[virtual]#
| Create a Schnorr signature for a Taproot spend&period;
| xref:BaseSignatureCreator/CreateSig.adoc[`CreateSig`]  [.small]#[virtual]#
| Create a singular (non&hyphen;script) signature&period;
|===


== Derived Classes

[cols="1,4"]
|===
| Name| Description
| xref:MutableTransactionSignatureCreator.adoc[`MutableTransactionSignatureCreator`] 
| A signature creator for transactions&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
